When the SM[2:0] bits are written to '010',
the SLEEP instruction makes the MCU enter Power-Down mode. In this mode, the external
Oscillator is stopped, while the external interrupts, the 2-wire Serial Interface address
watch, and the Watchdog continue operating (if enabled).
Only one of these events can wake up the MCU:
- External Reset
- Watchdog System Reset
- Watchdog Interrupt
- Brown-out Reset
- 2-wire Serial Interface address
match
- External level interrupt on INT
- Pin change interrupt
This sleep mode basically halts all generated clocks, allowing operation of
asynchronous modules only.
Note: If a level triggered interrupt is used
for wake-up from Power-Down, the required level must be held long enough for the MCU to
complete the wake-up to trigger the level interrupt. If the level disappears before the
end of the Start-up Time, the MCU will still wake up, but no interrupt will be
generated. The start-up time is defined by the SUT and CKSEL Fuses.
When waking up from Power-Down mode, there
is a delay from the wake-up condition occurs until the wake-up becomes effective. This
allows the clock to restart and become stable after having been stopped. The wake-up period
is defined by the same CKSEL Fuses that define the Reset Time-out period.