15.1 Sleep Modes
The following Table shows the different sleep modes, BOD disable ability and their wake-up sources.
Active Clock Domains | Oscillators | Wake-up Sources | Software BOD Disable | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Sleep Mode | clkCPU | clkFLASH | clkIO | clkADC | clkASY | Main Clock Source Enabled | Timer Oscillator Enabled | INT and PCINT | TWI Address Match | Timer2 | SPM/EEPROM Ready | ADC | WDT | Other I/O | |
Idle | Yes | Yes | Yes | Yes | Yes(2) | Yes | Yes | Yes | Yes | Yes | Yes | Yes | |||
ADC Noise Reduction | Yes | Yes | Yes | Yes(2) | Yes(3) | Yes | Yes(2) | Yes | Yes | Yes | |||||
Power-down | Yes(3) | Yes | Yes | Yes | |||||||||||
Power-save | Yes | Yes(2) | Yes(3) | Yes | Yes | Yes | Yes | ||||||||
Standby(1) | Yes | Yes(3) | Yes | Yes | Yes | ||||||||||
Extended Standby | Yes(2) | Yes | Yes(2) | Yes(3) | Yes | Yes | Yes | Yes |
- Only recommended with external crystal or resonator selected as clock source.
- If Timer/Counter2 is running in asynchronous mode.
- For INT1 and INT0, only level interrupt.
- Start frame detection, only.
To enter any of the six sleep modes, the Sleep Enable bit in the Sleep Mode Control Register (SMCR.SE) must be written to '1' and a SLEEP instruction must be executed. Sleep Mode Select bits (SMCR.SM[2:0]) select which sleep mode (Idle, ADC Noise Reduction, Power-down, Power-save, Standby, or Extended Standby) will be activated by the SLEEP instruction.
If an enabled interrupt occurs while the MCU is in a sleep mode, the MCU wakes up. The MCU is then halted for four cycles in addition to the start-up time, executes the interrupt routine, and resumes execution from the instruction following SLEEP. The contents of the Register File and SRAM are unaltered when the device wakes up from sleep. If a reset occurs during sleep mode, the MCU wakes up and executes from the Reset Vector.