
RM0453 Rev 2
RM0453
Low-power universal asynchronous receiver transmitter (LPUART)
1257
Alternatively, a specific lpuart_wkup interrupt may be selected through the WUS bitfields.
When the wakeup event is detected, the WUF flag is set by hardware and lpuart_wkup
interrupt is generated if the WUFIE bit is set.
Note:
Before entering low-power mode, make sure that no LPUART transfer is ongoing. Checking
the BUSY flag cannot ensure that low-power mode is never entered when data reception is
ongoing.
The WUF flag is set when a wakeup event is detected, independently of whether the MCU is
in low-power or in an active mode.
When entering low-power mode just after having initialized and enabled the receiver, the
REACK bit must be checked to ensure the LPUART is actually enabled.
When DMA is used for reception, it must be disabled before entering low-power mode and
re-enabled upon exit from low-power mode.
When FIFO is enabled, the wakeup from low-power mode on address match is only
possible when Mute mode is enabled.
Using Mute mode with low-power mode
If the LPUART is put into Mute mode before entering low-power mode:
•
Wakeup from Mute mode on idle detection must not be used, because idle detection
cannot work in low-power mode.
•
If the wakeup from Mute mode on address match is used, then the low-power mode
wakeup source from must also be the address match. If the RXNE flag was set when
entering the low-power mode, the interface remains in Mute mode upon address match
and wake up from low-power mode.
Note:
When FIFO management is enabled, Mute mode is used with wakeup from low-power
mode without any constraints (i.e.the two points mentioned above about mute and low-
power mode are valid only when FIFO management is disabled).
Wakeup from low-power mode when LPUART kernel clock lpuart_ker_ck is
OFF in low-power mode
If during low-power mode, the lpuart_ker_ck clock is switched OFF, when a falling edge on
the LPUART receive line is detected, the LPUART interface requests the lpuart_ker_ck
clock to be switched ON thanks to the lpuart_ker_ck_req signal. The lpuart_ker_ck is then
used for the frame reception.
If the wakeup event is verified, the MCU wakes up from low-power mode and data reception
goes on normally.
If the wakeup event is not verified, the lpuart_ker_ck is switched OFF again, the MCU is not
waken up and stays in low-power mode and the kernel clock request is released.
The example below shows the case of wakeup event programmed to “address match
detection” and FIFO management disabled.
shows the behavior when the wakeup event is verified.