37
8021G–AVR–03/11
ATmega329P/3290P
9.
Power Management and Sleep Modes
9.1
Overview
Sleep modes enable the application to shut down unused modules in the MCU, thereby saving-
power. The AVR provides various sleep modes allowing the user to tailor the power
consumption to the application’s requirements.
When enabled, the Brown-out Detector (BOD) actively monitors the power supply voltage during
the sleep periods. To further save power, it is possible to disable the BOD in some sleep modes.
9.2
Sleep Modes
their distribution. The figure is helpful in selecting an appropriate sleep mode.
Table 9-1 shows
the different sleep modes, their wake up sources and BOD disable ability.
Notes:
1. Only recommended with external crystal or resonator selected as clock source.
2. If either LCD controller or Timer/Counter2 is running in asynchronous mode.
3. For INT0, only level interrupt.
To enter any of the sleep modes, the SE bit in SMCR must be written to logic one and a SLEEP
instruction must be executed. The SM2, SM1, and SM0 bits in the SMCR Register select which
summary.
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.
Table 9-1.
Active Clock Domains and Wake-up Sources in the Different Sleep Modes.
Active Clock Domains
Oscillators
Wake-up Sources
Softw
a
re
BOD
Disd
ab
le
Sleep Mode
clk
CP
U
clk
FLAS
H
clk
IO
clk
AD
C
clk
AS
Y
Main
C
loc
k
Sour
ce
Enab
led
Tim
e
rOsc
Enab
led
INT2:
0
an
d
Pin
Chang
e
TWI
Ad
d
ress
Matc
h
Tim
e
r2
SP
M/
EE
PR
OM
Read
y
ADC
W
D
T
Interrupt
Ot
her
I/O
Idle
XXX
X
XXX
X
ADCNRM
X
XXX
Power-down
XX
X
Power-save
X
XX
X
XX
X