PWR_EnterStandbyMode Example Description

How to enter the Standby mode and wake up from this mode by using an external reset or a wakeup pin.

In the associated software, the system clock is set to 48 MHz. An EXTI line is connected to the User push-button through PC.13 and configured to generate an interrupt on falling edge upon key press.

Request to enter in standby mode:

When a falling edge is detected on the EXTI line, an interrupt is generated. In the EXTI handler routine, the wake-up pin LL_PWR_WAKEUP_PIN2 is enabled and the corresponding wake-up flag cleared. Then, the system enters Standby mode causing LED4 to stop toggling.

Exit from Standby mode:

The user can wake-up the system in pressing the User push-button which is connected to the wake-up pin LL_PWR_WAKEUP_PIN2. A falling edge on WKUP pin will wake-up the system from Standby.

Alternatively, an external reset (reset button on board) will wake-up system from Standby as well as wake-up pin.

After wake-up from Standby mode, program execution restarts in the same way as after a reset and LED4 restarts toggling. These steps are repeated in an infinite loop.

LED4 is used to monitor the system state as follows:

Notes

  1. To measure the current consumption in Standby mode, remove JP6 jumper and connect an ampere meter to JP6 to measure IDD current.

  2. This example can not be used in DEBUG mode due to the fact that the Cortex-M0+ core is no longer clocked during low power mode so debugging features are disabled.

Keywords

Power, PWR, Standby mode, Interrupt, EXTI, Wakeup, Low Power, External reset,

Directory contents

Hardware and Software environment

How to use it ?

In order to make the program work, you must do the following :