6
8025I–AVR–02/09
ATmega48P/88P/168P/328P
Watchdog Timer with internal Oscillator, and five software selectable power saving modes. The
Idle mode stops the CPU while allowing the SRAM, Timer/Counters, USART, 2-wire Serial Inter-
face, SPI port, and interrupt system to continue functioning. The Power-down mode saves the
register contents but freezes the Oscillator, disabling all other chip functions until the next inter-
rupt or hardware reset. In Power-save mode, the asynchronous timer continues to run, allowing
the user to maintain a timer base while the rest of the device is sleeping. The ADC Noise Reduc-
tion mode stops the CPU and all I/O modules except asynchronous timer and ADC, to minimize
switching noise during ADC conversions. In Standby mode, the crystal/resonator Oscillator is
running while the rest of the device is sleeping. This allows very fast start-up combined with low
power consumption.
The device is manufactured using Atmel’s high density non-volatile memory technology. The
On-chip ISP Flash allows the program memory to be reprogrammed In-System through an SPI
serial interface, by a conventional non-volatile memory programmer, or by an On-chip Boot pro-
gram running on the AVR core. The Boot program can use any interface to download the
application program in the Application Flash memory. Software in the Boot Flash section will
continue to run while the Application Flash section is updated, providing true Read-While-Write
operation. By combining an 8-bit RISC CPU with In-System Self-Programmable Flash on a
monolithic chip, the Atmel ATmega48P/88P/168P/328P is a powerful microcontroller that pro-
vides a highly flexible and cost effective solution to many embedded control applications.
The ATmega48P/88P/168P/328P AVR is supported with a full suite of program and system
development tools including: C Compilers, Macro Assemblers, Program Debugger/Simulators,
In-Circuit Emulators, and Evaluation kits.
2.2
Comparison Between ATmega48P, ATmega88P, ATmega168P, and ATmega328P
The ATmega48P, ATmega88P, ATmega168P, and ATmega328P differ only in memory sizes,
boot loader support, and interrupt vector sizes.
summarizes the different memory and
interrupt vector sizes for the three devices.
ATmega88P, ATmega168P, and ATmega328P support a real Read-While-Write Self-Program-
ming mechanism. There is a separate Boot Loader Section, and the SPM instruction can only
execute from there. In ATmega48P, there is no Read-While-Write support and no separate Boot
Loader Section. The SPM instruction can execute from the entire Flash.
Table 2-1.
Memory Size Summary
Device
Flash
EEPROM
RAM
Interrupt Vector Size
ATmega48P
4K Bytes
256 Bytes
512 Bytes
1 instruction word/vector
ATmega88P
8K Bytes
512 Bytes
1K Bytes
1 instruction word/vector
ATmega168P
16K Bytes
512 Bytes
1K Bytes
2 instruction words/vector
ATmega328P
32K Bytes
1K Bytes
2K Bytes
2 instructions words/vector