The MCUXpresso SDK provides a peripheral driver for the Low-Leakage Wakeup Unit (LLWU) module of MCUXpresso SDK devices. The LLWU module allows the user to select external pin sources and internal modules as a wake-up source from low-leakage power modes.
External wakeup pins configurations
Configures the external wakeup pins' working modes, gets, and clears the wake pin flags. External wakeup pins are accessed by the pinIndex
, which is started from 1. Numbers of the external pins depend on the SoC configuration.
Internal wakeup modules configurations
Enables/disables the internal wakeup modules and gets the module flags. Internal modules are accessed by moduleIndex
, which is started from 1. Numbers of external pins depend the on SoC configuration.
Digital pin filter for external wakeup pin configurations
Configures the digital pin filter of the external wakeup pins' working modes, gets, and clears the pin filter flags. Digital pin filters are accessed by the filterIndex
, which is started from 1. Numbers of external pins depend on the SoC configuration.
|
void | LLWU_SetExternalWakeupPinMode (LLWU_Type *base, uint32_t pinIndex, llwu_external_pin_mode_t pinMode) |
| Sets the external input pin source mode. More...
|
|
bool | LLWU_GetExternalWakeupPinFlag (LLWU_Type *base, uint32_t pinIndex) |
| Gets the external wakeup source flag. More...
|
|
void | LLWU_ClearExternalWakeupPinFlag (LLWU_Type *base, uint32_t pinIndex) |
| Clears the external wakeup source flag. More...
|
|
static void | LLWU_EnableInternalModuleInterruptWakup (LLWU_Type *base, uint32_t moduleIndex, bool enable) |
| Enables/disables the internal module source. More...
|
|
static bool | LLWU_GetInternalWakeupModuleFlag (LLWU_Type *base, uint32_t moduleIndex) |
| Gets the external wakeup source flag. More...
|
|
void | LLWU_SetPinFilterMode (LLWU_Type *base, uint32_t filterIndex, llwu_external_pin_filter_mode_t filterMode) |
| Sets the pin filter configuration. More...
|
|
bool | LLWU_GetPinFilterFlag (LLWU_Type *base, uint32_t filterIndex) |
| Gets the pin filter configuration. More...
|
|
void | LLWU_ClearPinFilterFlag (LLWU_Type *base, uint32_t filterIndex) |
| Clears the pin filter configuration. More...
|
|
struct llwu_external_pin_filter_mode_t |
Enumerator |
---|
kLLWU_ExternalPinDisable |
Pin disabled as a wakeup input.
|
kLLWU_ExternalPinRisingEdge |
Pin enabled with the rising edge detection.
|
kLLWU_ExternalPinFallingEdge |
Pin enabled with the falling edge detection.
|
kLLWU_ExternalPinAnyEdge |
Pin enabled with any change detection.
|
Enumerator |
---|
kLLWU_PinFilterDisable |
Filter disabled.
|
kLLWU_PinFilterRisingEdge |
Filter positive edge detection.
|
kLLWU_PinFilterFallingEdge |
Filter negative edge detection.
|
kLLWU_PinFilterAnyEdge |
Filter any edge detection.
|
This function sets the external input pin source mode that is used as a wake up source.
- Parameters
-
base | LLWU peripheral base address. |
pinIndex | A pin index to be enabled as an external wakeup source starting from 1. |
pinMode | A pin configuration mode defined in the llwu_external_pin_modes_t. |
bool LLWU_GetExternalWakeupPinFlag |
( |
LLWU_Type * |
base, |
|
|
uint32_t |
pinIndex |
|
) |
| |
This function checks the external pin flag to detect whether the MCU is woken up by the specific pin.
- Parameters
-
base | LLWU peripheral base address. |
pinIndex | A pin index, which starts from 1. |
- Returns
- True if the specific pin is a wakeup source.
void LLWU_ClearExternalWakeupPinFlag |
( |
LLWU_Type * |
base, |
|
|
uint32_t |
pinIndex |
|
) |
| |
This function clears the external wakeup source flag for a specific pin.
- Parameters
-
base | LLWU peripheral base address. |
pinIndex | A pin index, which starts from 1. |
static void LLWU_EnableInternalModuleInterruptWakup |
( |
LLWU_Type * |
base, |
|
|
uint32_t |
moduleIndex, |
|
|
bool |
enable |
|
) |
| |
|
inlinestatic |
This function enables/disables the internal module source mode that is used as a wake up source.
- Parameters
-
base | LLWU peripheral base address. |
moduleIndex | A module index to be enabled as an internal wakeup source starting from 1. |
enable | An enable or a disable setting |
static bool LLWU_GetInternalWakeupModuleFlag |
( |
LLWU_Type * |
base, |
|
|
uint32_t |
moduleIndex |
|
) |
| |
|
inlinestatic |
This function checks the external pin flag to detect whether the system is woken up by the specific pin.
- Parameters
-
base | LLWU peripheral base address. |
moduleIndex | A module index, which starts from 1. |
- Returns
- True if the specific pin is a wake up source.
This function sets the pin filter configuration.
- Parameters
-
base | LLWU peripheral base address. |
filterIndex | A pin filter index used to enable/disable the digital filter, starting from 1. |
filterMode | A filter mode configuration |
bool LLWU_GetPinFilterFlag |
( |
LLWU_Type * |
base, |
|
|
uint32_t |
filterIndex |
|
) |
| |
This function gets the pin filter flag.
- Parameters
-
base | LLWU peripheral base address. |
filterIndex | A pin filter index, which starts from 1. |
- Returns
- True if the flag is a source of the existing low-leakage power mode.
void LLWU_ClearPinFilterFlag |
( |
LLWU_Type * |
base, |
|
|
uint32_t |
filterIndex |
|
) |
| |
This function clears the pin filter flag.
- Parameters
-
base | LLWU peripheral base address. |
filterIndex | A pin filter index to clear the flag, starting from 1. |