AIROC™ BTSDK v4.9 - Documentation | ||||
Defines functions for using the AIROC Sleep Framework. More...
Data Structures | |
struct | wiced_sleep_config_t |
Sleep configuration parameters. More... | |
Macros | |
#define | WICED_SLEEP_MAX_TIME_TO_SLEEP ~0 |
#define | WICED_SLEEP_WAKE_SOURCE_KEYSCAN (1<<0) |
Wake sources. More... | |
#define | WICED_SLEEP_WAKE_SOURCE_QUAD (1<<1) |
Enable wake from quadrature sensor. | |
#define | WICED_SLEEP_WAKE_SOURCE_GPIO (1<<2) |
Enable wake from GPIO. | |
#define | WICED_SLEEP_WAKE_SOURCE_MASK |
All wake sources. More... | |
Typedefs | |
typedef uint32_t(* | wiced_sleep_allow_check_callback )(wiced_sleep_poll_type_t type) |
Application implements call back of this type to allow or disallow the chip to go to sleep. More... | |
Enumerations | |
enum | wiced_sleep_boot_type_t { WICED_SLEEP_COLD_BOOT, WICED_SLEEP_FAST_BOOT } |
Boot mode. More... | |
enum | wiced_sleep_mode_type_t { WICED_SLEEP_MODE_NO_TRANSPORT, WICED_SLEEP_MODE_TRANSPORT, WICED_SLEEP_MODE_NO_TRANSPORT, WICED_SLEEP_MODE_TRANSPORT } |
Sleep modes. More... | |
enum | wiced_sleep_wake_type_t { WICED_SLEEP_WAKE_ACTIVE_LOW, WICED_SLEEP_WAKE_ACTIVE_HIGH, WICED_SLEEP_WAKE_ACTIVE_LOW, WICED_SLEEP_WAKE_ACTIVE_HIGH } |
Active interrupt level for Wake through GPIO. More... | |
enum | wiced_sleep_poll_type_t { WICED_SLEEP_POLL_TIME_TO_SLEEP, WICED_SLEEP_POLL_SLEEP_PERMISSION, WICED_SLEEP_POLL_TIME_TO_SLEEP, WICED_SLEEP_POLL_SLEEP_PERMISSION } |
Sleep poll type. More... | |
enum | wiced_sleep_permission_type_t { WICED_SLEEP_NOT_ALLOWED, WICED_SLEEP_ALLOWED_WITHOUT_SHUTDOWN, WICED_SLEEP_ALLOWED_WITH_SHUTDOWN, WICED_SLEEP_NOT_ALLOWED, WICED_SLEEP_ALLOWED } |
Sleep permission Note: SHUTDOWN mode sleep puts the chip in the lowest power saving sleep mode. More... | |
Functions | |
wiced_result_t | wiced_sleep_configure (wiced_sleep_config_t *p_sleep_config) |
API to configure sleep mode parameters. More... | |
Defines functions for using the AIROC Sleep Framework.
#define WICED_SLEEP_WAKE_SOURCE_KEYSCAN (1<<0) |
Wake sources.
Enable wake from keyscan
#define WICED_SLEEP_WAKE_SOURCE_MASK |
All wake sources.
typedef uint32_t(* wiced_sleep_allow_check_callback)(wiced_sleep_poll_type_t type) |
Application implements call back of this type to allow or disallow the chip to go to sleep.
[in] | type | Poll type (see wiced_sleep_poll_type_t) |
Note:- Application shall return immediately, with the return value specifying whether it allows/disallows sleep. Immediate return is required to allow the maximum time to sleep. Applications shall ensure that all peripheral activity (on PUART, SPI, .. ) is paused before allowing sleep. Any pending activity on the peripherals is lost when the device goes into sleep.
Sleep modes.
Sleep permission Note: SHUTDOWN mode sleep puts the chip in the lowest power saving sleep mode.
This turns off most hardware including parts of SRAM. Hence, if the application requires to preserve some context data for it to resume normal operation after wake up, app should store this context data in Always On Memory (the part that is not turned off). This is done by declaring the context variable with the attribute attribute ((section(".data_in_retention_ram"))). The memory in AON available is limited, the maximum that application can use are 256 bytes. When mode WICED_SLEEP_ALLOWED_WITH_SHUTDOWN is selected, the FW puts the chip in Shutdown sleep mode if that is possible, else the chip will be put in a non-shutdown sleep mode. To prevent FW from attempting to put the chip in Shutdown sleep mode, select WICED_SLEEP_ALLOWED_WITHOUT_SHUTDOWN.
Sleep poll type.
Active interrupt level for Wake through GPIO.
wiced_result_t wiced_sleep_configure | ( | wiced_sleep_config_t * | p_sleep_config | ) |
API to configure sleep mode parameters.
[in] | p_sleep_config | see |