

Overview
The ATMEGA328-PU is a microcontroller made by Microchip Technology in a PDIP-28 package with 28 pins. -40℃~+85℃ 1.8V~5.5V 10bit 1KB 20MHz 23 2KB 32KB 8 Bit AVR Built-in FLASH PDIP-28 Microcontrollers (MCU/MPU/SOC) ROHS.
PCBKit's library has its KiCad symbol (MCU_Microchip_ATmega:ATmega328-P, from KiCad's library) and its footprint (Package_DIP:DIP-28_W7.62mm, from KiCad's library), ready for a KiCad board. 28 are in stock at JLCPCB (part C613508). 435 open-source boards in 329 repositories on GitHub use it.
Symbol
Footprint
From the datasheet
9- Supply, least
- 1.8 V · VCC, recommended operating min · p. 311
- Supply, most
- 5.5 V · VCC, recommended operating max · p. 311
- Works from
- -40 °C · Ambient min, DC characteristics · p. 311
- Works up to
- 85 °C · Ambient max, DC characteristics · p. 311
- A pin gives at most
- 40 mA · DC current per I/O pin, absolute max · p. 308
- Takes working
- 5.2 mA · VCC, typical active current at 8MHz, 5V · p. 311
- Takes at most
- 12 mA · VCC, max active current at 8MHz, 5V · p. 311
- Takes asleep
- 100 nA · VCC, typical power-down current, WDT disabled, 3V · p. 311
- Supply, absolute maximum
- 6 V · VCC, absolute maximum · p. 322
What it is and has
14- Core
- AVR 8-bit, advanced RISC architecture · p. 1
- Maximum throughput
- 20 MIPS at 20MHz · p. 1
- 8-bit Timer/Counters
- 2, with separate prescaler and compare mode · p. 1
- 16-bit Timer/Counter
- 1, with separate prescaler, compare mode, and capture mode · p. 1
- ADC resolution
- 10-bit · p. 246
- ADC input channels
- 6 multiplexed single-ended channels · p. 246
- ADC absolute accuracy
- ±2 LSB · p. 246
- Temperature sensor
- ADC input channel · p. 246
- Core
- AVR 8-bit RISC · p. 1
- Instructions
- 131, most single clock cycle execution · p. 1
- Working registers
- 32 x 8 · p. 1
- CPU throughput
- Up to 20 MIPS at 20MHz · p. 1
- Multiplier
- On-chip, 2-cycle · p. 1
- Memory endurance
- 10,000 Flash / 100,000 EEPROM write/erase cycles · p. 1
Specifications
32| Parameter | Conditions | As printed | Page |
|---|---|---|---|
| Operating Temperature | Absolute maximum ratings | min -55 · max 125 °C | 308 |
| Storage Temperature | min -65 · max 150 °C | 308 | |
| Voltage on any Pin except RESET with respect to Ground | Maximum: VCC+0.5V | min -0.5 V | 308 |
| Voltage on RESET with respect to Ground | min -0.5 · max 13 V | 308 | |
| DC Current per I/O Pin | max 40 mA | 308 | |
| DC Current VCC and GND Pins | max 200 mA | 308 | |
| Power Supply Current(1) ICC | ATmega328; Active 1MHz, VCC = 2V | typ 0.3 · max 0.55 mA | 311 |
| Power Supply Current(1) ICC | ATmega328; Active 4MHz, VCC = 3V | typ 1.7 · max 3.5 mA | 311 |
| Power Supply Current(1) ICC | ATmega328; Active 8MHz, VCC = 5V | typ 5.2 · max 12 mA | 311 |
| Power Supply Current(1) ICC | ATmega328; Idle 1MHz, VCC = 2V | typ 0.04 · max 0.5 mA | 311 |
| Power Supply Current(1) ICC | ATmega328; Idle 4MHz, VCC = 3V | typ 0.3 · max 1.5 mA | 311 |
| Power Supply Current(1) ICC | ATmega328; Idle 8MHz, VCC = 5V | typ 1.2 · max 5.5 mA | 311 |
| Power-save mode(3) ICC | ATmega328; 32kHz TOSC enabled, VCC = 1.8V | typ 0.8 uA | 311 |
| Power-save mode(3) ICC | ATmega328; 32kHz TOSC enabled, VCC = 3V | typ 0.9 uA | 311 |
| Power-down mode(3) ICC | ATmega328; WDT enabled, VCC = 3V | typ 4.2 · max 15 uA | 311 |
| Power-down mode(3) ICC | ATmega328; WDT disabled, VCC = 3V | typ 0.1 · max 2 uA | 311 |
| Operating Temperature | Absolute maximum rating | min -55 · max 125 °C | 322 |
| Storage Temperature | min -65 · max 150 °C | 322 | |
| Voltage on any Pin except RESET with respect to Ground | Maximum: VCC+0.5V | min -0.5 V | 322 |
| Voltage on RESET with respect to Ground | min -0.5 · max 13 V | 322 | |
| Maximum Operating Voltage | max 6 V | 322 | |
| DC Current VCC and GND Pins | max 200 mA | 322 | |
| Input Low Voltage, except XTAL1 and RESET pin VIL | VCC = 1.8V - 2.4V; TA = -40°C to 105°C; maximum: 0.2VCC(1) | min -0.5 V | 322 |
| Input Low Voltage, except XTAL1 and RESET pin VIL | VCC = 2.4V - 5.5V; TA = -40°C to 105°C; maximum: 0.3VCC(1) | min -0.5 V | 322 |
| Input Low Voltage, XTAL1 pin VIL1 | VCC = 1.8V - 5.5V; TA = -40°C to 105°C; maximum: 0.1VCC(1) | min -0.5 V | 322 |
| Input Low Voltage, RESET pin VIL2 | VCC = 1.8V - 5.5V; TA = -40°C to 105°C; maximum: 0.1VCC(1) | min -0.5 V | 322 |
| Input Low Voltage, RESET pin as I/O VIL3 | VCC = 1.8V - 2.4V; TA = -40°C to 105°C; maximum: 0.2VCC(1) | min -0.5 V | 322 |
| Input Low Voltage, RESET pin as I/O VIL3 | VCC = 2.4V - 5.5V; TA = -40°C to 105°C; maximum: 0.3VCC(1) | min -0.5 V | 322 |
| Output Low Voltage(4) except RESET pin VOL | IOL = 20mA, VCC = 5V, TA=85°C | max 0.9 V | 322 |
| Output Low Voltage(4) except RESET pin VOL | IOL = 20mA, VCC = 5V, TA=105°C | max 1 V | 322 |
| Output Low Voltage(4) except RESET pin VOL | IOL = 10mA, VCC = 3V, TA=85°C | max 0.6 V | 322 |
| Output Low Voltage(4) except RESET pin VOL | IOL = 10mA, VCC = 3V, TA=105°C | max 0.7 V | 322 |
Parameters
18- ADC (Bit)
- 10bit
- CPU Core
- AVR
- CPU Maximum Speed
- 20MHz
- Core Size
- 8 Bit
- Current - Supply
- 5.2mA
- Current - Supply(Max)
- 12mA
- EEPROM
- 1KB
- Features
- Calendar function
- Number of I/O
- 23
- Operating Temperature
- -40℃~+85℃
- Oscillator Type
- Built-in
- Output Current per Pin(Max)
- 40mA
- Program Memory Type
- FLASH
- Program Storage Size
- 32KB
- RAM Size
- 2KB
- Standby Current
- 100nA
- Voltage - Supply
- 1.8V~5.5V
- Voltage - Supply(Absolute Max)
- 6V
Order codes
1- ATMEGA328-PULCSC C613508
Pinout
28| Pin | Name | Type |
|---|---|---|
| 1 | RESET/PC6 | Input/output |
| 2 | PD0 | Input/output |
| 3 | PD1 | Input/output |
| 4 | PD2 | Input/output |
| 5 | PD3 | Input/output |
| 6 | PD4 | Input/output |
| 7 | VCC | Power in |
| 8 | GND | Power in |
| 9 | XTAL1/PB6 | Input/output |
| 10 | XTAL2/PB7 | Input/output |
| 11 | PD5 | Input/output |
| 12 | PD6 | Input/output |
| 13 | PD7 | Input/output |
| 14 | PB0 | Input/output |
| 15 | PB1 | Input/output |
| 16 | PB2 | Input/output |
| 17 | PB3 | Input/output |
| 18 | PB4 | Input/output |
| 19 | PB5 | Input/output |
| 20 | AVCC | Power in |
| 21 | AREF | Passive |
| 22 | GND | Passive |
| 23 | PC0 | Input/output |
| 24 | PC1 | Input/output |
| 25 | PC2 | Input/output |
| 26 | PC3 | Input/output |
| 27 | PC4 | Input/output |
| 28 | PC5 | Input/output |
Open-source boards using it
All 435- 2 layers104.9 × 75.2 mm

- 2 layers228 × 98 mm

- 2 layers94.6 × 46.1 mm

- 2 layers50 × 50 mm

- 2 layers284.7 × 94.2 mm

Lumberjack
peej/lumberjack-keyboard
5x12 ortholinear through-hole component keyboard PCB for standard 60% cases
165 parts403MIT - 2 layers132.1 × 45.7 mm

IPoS
peterheinrich/InternetOverSpaghetti
Transmitting IP packages over a pair of spaghetti thus demonstrating how media independent IP really is.
42 parts342 - 2 layers63.3 × 57.2 mm

- 2 layers285 × 117 mm

Show this part on your page
<iframe src="https://pcbkit.io/embed/parts/microchip/ATMEGA328-PU" title="ATMEGA328-PU in PCBKit" width="100%" height="480" style="border:0;border-radius:12px" allow="fullscreen" loading="lazy"></iframe><img src="https://pcbkit.io/embed/parts/microchip/ATMEGA328-PU.jpg" alt="ATMEGA328-PU" width="1200" height="900">[](https://pcbkit.io/parts/microchip/ATMEGA328-PU)Questions
Is there a KiCad symbol and footprint for the ATMEGA328-PU?
Yes. The symbol is MCU_Microchip_ATmega:ATmega328-P and the footprint Package_DIP:DIP-28_W7.62mm, both drawn on this page. PCBKit places them on a board for you when you design with it.
What package is the ATMEGA328-PU?
PDIP-28, with 28 pins. Its footprint is drawn on this page.
Where is the ATMEGA328-PU datasheet?
Microchip Technology publishes it: the Datasheet link on this page opens it.
Where can I order the ATMEGA328-PU?
JLCPCB lists it as part C613508, with 28 in stock; the sellers' links on this page open their listings.
What can replace the ATMEGA328-PU?
Parts like it in the library: the ATMEGA328P-PU by Microchip Technology, the PIC16F72-I/SP by Microchip Technology, the PIC16F883-I/SP by Microchip Technology and the PIC16F873A-I/SP by Microchip Technology. Check their datasheets: a part that fits the footprint may still differ in its ratings.
Which open-source boards use the ATMEGA328-PU?
435 boards in 329 repositories on GitHub; the most starred are listed on this page, with their KiCad files.
Parts like it
8ATMEGA328P-PU
DIP-28-300mil-40℃~+85℃ 1.8V~5.5V 10bit 1KB 20MHz 23 2KB 32KB 8 Bit AVR Built-in FLASH DIP-28-300mil Microcontrollers (MCU/MPU/SOC) ROHSMicrochip TechnologyMicrocontrollers (MCU/MPU/SOC)PIC16F72-I/SP
DIP-28-300mil-40℃~+85℃ 128Byte 20MHz 22 3.5KB 4V~5.5V 8 Bit 8bit External FLASH PIC DIP-28-300mil Microcontrollers (MCU/MPU/SOC) ROHSMicrochip TechnologyMicrocontrollers (MCU/MPU/SOC)PIC16F883-I/SP
DIP-28-300mil-40℃~+85℃ 10bit 20MHz 24 256Byte 256Byte 2V~5.5V 7KB 8 Bit Built-in FLASH PIC DIP-28-300mil Microcontrollers (MCU/MPU/SOC) ROHSMicrochip TechnologyMicrocontrollers (MCU/MPU/SOC)PIC16F873A-I/SP
DIP-28-300mil-40℃~+85℃ 10bit 128Byte 192Byte 20MHz 22 4V~5.5V 7KB 8 Bit External FLASH PIC DIP-28-300mil Microcontrollers (MCU/MPU/SOC) ROHSMicrochip TechnologyMicrocontrollers (MCU/MPU/SOC)PIC16F886-I/SP
DIP-28-300mil-40℃~+85℃ 10bit 14KB 20MHz 24 256Byte 2V~5.5V 368Byte 8 Bit Built-in FLASH PIC DIP-28-300mil Microcontrollers (MCU/MPU/SOC) ROHSMicrochip TechnologyMicrocontrollers (MCU/MPU/SOC)ATMEGA328P-PN
PDIP-28-40℃~+105℃ 1.8V~5.5V 10bit 1KB 20MHz 23 2KB 32KB 8 Bit AVR Built-in FLASH PDIP-28 Microcontrollers (MCU/MPU/SOC) ROHSMicrochip TechnologyMicrocontrollers (MCU/MPU/SOC)PIC16F73-I/SP
DIP-28-300mil-40℃~+85℃ 192Byte 20MHz 22 4V~5.5V 7KB 8 Bit 8bit External FLASH PIC DIP-28-300mil Microcontrollers (MCU/MPU/SOC) ROHSMicrochip TechnologyMicrocontrollers (MCU/MPU/SOC)PIC18F2580-I/SP
DIP-28-300mil-40℃~+85℃ 1.5KB 10bit 25 256Byte 32KB 4.2V~5.5V 40MHz 8 Bit Built-in FLASH PIC Power-on reset (POR)、Undervoltage detection (BOR/LVD/LVR/LVI)、Watchdog reset、Software reset、External pin reset (NRST)、Built-in general-purpose timer、Programmable watchdog、Stack overflow reset DIP-28-300mil Microcontrollers (MCU/MPU/SOC) ROHSMicrochip TechnologyMicrocontrollers (MCU/MPU/SOC)