
Low-power universal asynchronous receiver transmitter (LPUART)
RM0453
1228/1454
RM0453 Rev 2
The LPUART DEAT and DEDT are expressed in LPUART clock source (f
CK
) cycles:
•
The Driver enable assertion time equals
–
(1 + (DEAT x P)) x f
CK
, if P # 0
–
(1 + DEAT) x f
CK
, if P = 0
•
The Driver enable deassertion time equals
–
(1 + (DEDT x P)) x f
CK
, if P # 0
–
(1 + DEDT) x f
CK
, if P = 0
where P = BRR[20:11]
36.4.14 LPUART low-power management
The LPUART has advanced low-power mode functions that enable it to transfer properly
data even when the lpuart_pclk clock is disabled.
The LPUART is able to wake up the MCU from low-power mode when the UESM bit is set.
When the lpuart_pclk is gated, the LPUART provides a wakeup interrupt (lpuart_wkup) if a
specific action requiring the activation of the lpuart_pclk clock is needed:
•
If FIFO mode is disabled
luart_pclk clock has to be activated to empty the LPUART data register.
In this case, the lpuart_wkup interrupt source is the RXNE set to ‘1’. The RXNEIE bit
must be set before entering low-power mode.
•
If FIFO mode is enabled
luart_pclk clock has to be activated
– to fill the TXFIFO
– or to empty the RXFIFO
In this case, the lpuart_wkup interrupt source can be:
– RXFIFO not empty. In this case, the RXFNEIE bit must be set before entering low-
power mode.
– RXFIFO full. In this case, the RXFFIE bit must be set before entering low-power
mode, the number of received data corresponds to the RXFIFO size, and the RXFF
flag is not set .
– TXFIFO empty. In this case, the TXFEIE bit must be set before entering low-power
mode.
This enables sending/receiving the data in the TXFIFO/RXFIFO during low-power
mode.
To avoid overrun/underrun errors and transmit/receive data in low-power mode, the
lpuart_wkup interrupt source can be one of the following events:
– TXFIFO threshold reached. In this case, the TXFTIE bit must be set before entering
low-power mode.
– RXFIFO threshold reached. In this case, the RXFTIE bit must be set before entering
low-power mode.
For example, the application can set the threshold to the maximum RXFIFO size if the
wakeup time is less than the time to receive a single byte across the line.
Using the RXFIFO full, TXFIFO empty, RXFIFO not empty and RXFIFO/TXFIFO
threshold interrupts to wakeup the MCU from low-power mode enables doing as many
LPUART transfers as possible during low-power mode with the benefit of optimizing
consumption.