GD32F20x User Manual
68
WFI or WFE instruction is executed.
Sleep-on-exit: if the SLEEPONEXIT bit is set, the MCU enters Sleep mode as soon as it
exits from the lowest priority ISR.
Deep-sleep mode
The Deep-sleep mode is based on the SLEEPDEEP mode of the
Cortex™-M3. In Deep-sleep
mode, all clocks in the 1.2V domain are off, and all of IRC8M, HXTAL and PLLs are disabled.
The contents of SRAM and registers are preserved. The LDO can operate normally or in low
power mode depending on the LDOLP bit in the PMU_CTL register. Before entering the
Deep-sleep mode, it is necessary to set the SLEEPDEEP bit in the
Cortex™-M3 System
Control Register, and clear the STBMOD bit in the PMU_CTL register. Then, the device
enters the Deep-sleep mode after a WFI or WFE instruction is executed. If the Deep-sleep
mode is entered by executing a WFI instruction, any interrupt from EXTI lines can wake up
the system. If it is entered by executing a WFE instruction, any wakeup event from EXTI lines
can wake up the system (If SEVONPEND is 1, any interrupt from EXTI lines can wake up the
system, refer to Cortex-M3 Technical Reference Manual). When exiting the Deep-sleep mode,
the IRC8M is selected as the system clock. Notice that an additional wakeup delay will be
incurred if the LDO operates in low power mode.
Note:
In order to enter Deep-sleep mode smoothly, all EXTI line pending status (in the
EXTI_PD register) and RTC Alarm must be reset. If not, the program will skip the entry
process of Deep-sleep mode to continue to execute the following procedure.
The Standby mode is based on the SLEEPDEEP mode of the
Cortex™-M3, too. In Standby
mode, the whole 1.2V domain is power off, the LDO is shut down, and all of IRC8M, HXTAL
and PLL are disabled. Before entering the Standby mode, it is necessary to set the
SLEEPDEEP bit in the
Cortex™-M3 System Control Register, and set the STBMOD bit in the
PMU_CTL register, and clear WUF bit in the PMU_CS register. Then, the device enters the
Standby mode after a WFI or WFE instruction is executed, and the STBF status flag in the
PMU_CS register indicates that the MCU has been in Standby mode. There are four wakeup
sources for the Standby mode, including the external reset from NRST pin, the RTC alarm,
the FWDGT reset, and the rising edge on WKUP pin. The Standby mode achieves the lowest
power consumption, but spends longest time to wake up. Besides, the contents of SRAM and
registers in 1.2V power domain are lost in Standby mode. When exiting from the Standby
mode, a power-on reset occurs and the
Cortex™-M3 will execute instruction code from the
0x00000000 address.
Table 3-1. Power saving mode summary
Mode
Sleep
Deep-sleep
Standby
Description
Only CPU clock is off
1.All clocks in the 1.2V
domain are off
2.Disable IRC8M, HXTAL
1.
The 1.2V domain is
power off
2.
Disable IRC8M, HXTAL
Summary of Contents for GD32F20 Series
Page 191: ...GD32F20x User Manual 191 Bits Fields Descriptions 31 0 TRNDATA 31 0 32 Bit Random data ...
Page 290: ...GD32F20x User Manual 290 conversion is ongoing ...
Page 325: ...GD32F20x User Manual 325 15 0 ALRM 15 0 RTC alarm value low ...
Page 385: ...GD32F20x User Manual 385 ...
Page 523: ...GD32F20x User Manual 523 clears AERR bit by writing 0 to it ...