English
Language : 

MEGA128CAN Datasheet, PDF (44/413 Pages) ATMEL Corporation – Microcontroller WITH 128K BYTES OF ISP FLASH AND CAN CONTROLLER
Idle Mode
ADC Noise Reduction
Mode
Power-down Mode
Power-save Mode
just before the execution of the SLEEP instruction and to clear it immediately after wak-
ing up.
When the SM2..0 bits are written to 000, the SLEEP instruction makes the MCU enter
Idle mode, stopping the CPU but allowing SPI, CAN, USART, Analog Comparator, ADC,
Two-wire Serial Interface, Timer/Counters, Watchdog, and the interrupt system to con-
tinue operating. This sleep mode basically halts clkCPU and clkFLASH, while allowing the
other clocks to run.
Idle mode enables the MCU to wake up from external triggered interrupts as well as
internal ones like the Timer Overflow and USART Transmit Complete interrupts. If
wake-up from the Analog Comparator interrupt is not required, the Analog Comparator
can be powered down by setting the ACD bit in the Analog Comparator Control and Sta-
tus Register – ACSR. This will reduce power consumption in Idle mode. If the ADC is
enabled, a conversion starts automatically when this mode is entered.
When the SM2..0 bits are written to 001, the SLEEP instruction makes the MCU enter
ADC Noise Reduction mode, stopping the CPU but allowing the ADC, the External
Interrupts, the Two-wire Serial Interface address watch, Timer/Counter2, CAN and the
Watchdog to continue operating (if enabled). This sleep mode basically halts clkI/O,
clkCPU, and clkFLASH, while allowing the other clocks to run.
This improves the noise environment for the ADC, enabling higher resolution measure-
ments. If the ADC is enabled, a conversion starts automatically when this mode is
entered. Apart from the ADC Conversion Complete interrupt, only an External Reset, a
Watchdog Reset, a Brown-out Reset, a Two-wire Serial Interface address match inter-
rupt, a Timer/Counter2 interrupt, an SPM/EEPROM ready interrupt, an External Level
Interrupt on INT7:4, or an External Interrupt on INT3:0 can wake up the MCU from ADC
Noise Reduction mode.
When the SM2..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 Two-wire Serial Interface address watch, and the Watchdog continue
operating (if enabled). Only an External Reset, a Watchdog Reset, a Brown-out Reset, a
Two-wire Serial Interface address match interrupt, an External Level Interrupt on
INT7:4, or an External Interrupt on INT3:0 can wake up the MCU. This sleep mode basi-
cally halts all generated clocks, allowing operation of asynchronous modules only.
Note that if a level triggered interrupt is used for wake-up from Power-down mode, the
changed level must be held for some time to wake up the MCU. Refer to “External Inter-
rupts” on page 88 for details.
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, as described in “Clock Sources” on page
35.
When the SM2..0 bits are written to 011, the SLEEP instruction makes the MCU enter
Power-save mode. This mode is identical to Power-down, with one exception:
If Timer/Counter2 is clocked asynchronously, i.e., the AS2 bit in ASSR is set,
Timer/Counter2 will run during sleep. The device can wake up from either Timer Over-
flow or Output Compare event from Timer/Counter2 if the corresponding
44 AT90CAN128
4250E–CAN–12/04