ATmega328 Datasheet, Pinout, Minimal Circuit, Maximum Frequency Calculator

The ATmegaXX8 family of AVR devices includes the ATmega48, ATmega88, ATmega168, and ATmega328. They are similar in that they have identical I/O. They have three timers - two 8-bit and one 16-bit.They differ in the amount of memory available, with flash memory size of from 4kB to 32kB. The devices are widely used in Arduino and Arduino clone boards. The difference between the A and PA (ATmega328 vs ATmega328P) is that the PA parts are pico power. They can run at lower Vcc's than the A parts, thereby using much less power.

The most popular members of this family are the ATmega168 and the ATmega328. The ATmega168 was used in the midrange Arduino boards, after the ATmega8. The latest Arduino Uno uses the ATmega328. This is far and away the biggest hobbyist use of these devices. The ATmega48 is a little different - it does not support a bootloader section in flash. You can see the comparisons of the ATmega48 vs. ATmega88 vs. ATmega168 vs. ATmega328 below.

Power Supply vs. Maximum Frequency

The calculator below provides a way to find the maximum operating frequency for any valid power supply voltage (2.7 to 5.5). Enter the power supply voltage and click "Calculate Max Frequency" to find the ATmegaXX8's specified maximum clock speed at your Vcc.

Maximum Frequency Calculator for the ATmegaxx8 devices

ATmega48, ATmega88, ATmega168, ATmega328 Features
Feature 48 88 168 328
Flash 4k 8k 16k 32k
EEPROM 0.5k 0.5k 1k 2k
RAM 0.5k 1k 1k 2k
I/O Pins 23
Interrupts 26
ADC Channels 6[1]
RT Counter (w/osc) 0
Timers (8-bit) 2
Timers (16-bit) 1
PWM (8-bit) 4
PWM (16-bit) 2
Price (1's) $2.09 $2.51 $2.84 $3.23
Characteristic Value
Power Consumption (approximate) 0.6mA/MHz
Maximum I/O Current (per pin) 40mA
Maximum I/O Current (all ports) 100mA(low)/150mA(high)
Maximum I/O Current (total) 200mA (PDIP)
Maximum I/O Current (total) 400mA (PDIP/QFP/MLF)
  1. The DIP package has 6 ADC channels, while the QFP/MLF packages have 8 ADC channels.

ATmega48, ATmega88, ATmega168, ATmega328 Datasheet

Link to ATmega328 datasheet from Atmel's website.

ATmega48/ATmega88, ATmega168, ATmega328 Pinout

ATmega328P-PU pinout ATmega328P-AU pinout

ATmega48, ATmega88, ATmega168, ATmega328 "Minimal" Circuit Diagram

The circuit below shows a programming port, reset circuit, and a crystal oscillator. Any or all of these could be left off and the device would function perfectly well. By default the unit runs from the 8MHz internal RC oscillator divided by 8, for a 1MHz system clock.

ATmega644 minimal schematic diagram