11.2 Overview
Sleep modes are used to shut down peripherals and clock domains in the device in order to save power. The Sleep Controller (SLPCTRL) controls and handles the transitions between active and sleep mode.
There are in total four modes available:
- One active mode in which the software is executed
- Three sleep modes:
- Idle
- Standby
- Power-Down
All sleep modes are available and can be entered from active mode. In active mode, the CPU is executing application code. When the device enters sleep mode, program execution is stopped and interrupts or a reset is used to wake the device again. The application code decides which sleep mode to enter and when.
Interrupts are used to wake the device from sleep. The
available interrupt wake-up sources depend on the configured sleep
mode. When an interrupt occurs, the device will wake up and execute the
interrupt service routine before continuing normal program execution
from the first instruction after the SLEEP
instruction. Any Reset will take the device out of a sleep mode.
The content of the register file, SRAM and registers are kept during sleep. If a Reset occurs during sleep, the device will reset, start, and execute from the Reset vector.