The Atmel ATmega328 Microcontroller is an 8-bit megaAVR device based on the AVR enhanced RISC architecture. By executing powerful instructions in a single clock cycle the ATmega328 achieves throughputs approaching 1 MIPS per MHz, balancing power consumption and speed.
Microcontroller Features
20 MHz Max. Operating Frequency Up to 20 MIPS at 20 MHz 32 KB Flash 1024 B EEPROM 2 KB SRAM 131 Instructions – Most single clock cycle execution 32 General Purpose Registers 23 GPIO Power-on Reset and Programmable Brown-out Detection Internal Calibrated Oscillator External and Internal Interrupt Sources Five Power-Saving Sleep Modes Internal and External Interrupts Fully Static Operation
Peripheral Features
10-bit 15 ksps Analogue-to-Digital Converter (ADC) – 8 or 6 channels Capacitive Touch Sense – 16 channels Temperature Sensor Two 8-bit Timers One 16-bit Timer Output Compare Module – 6 channels Six PWM Channels Programmable Serial USART Master/Slave SPI Serial Interface Byte-oriented 2-wire Serial Interface – I2C compatible Programmable Watchdog Timer with Separate Oscillator Analogue Comparator Interrupt and Wake-up on Pin Change