Difference Between Arduino and ATmega328
Created on: 9 May 2017
Beginners hear about Arduino and ATmega328 AVR and may not understand the difference or relationship between the two. This article explains the difference between Arduino and ATmega328.
This article explains the difference between an Arduino Uno board and ATmega328 AVR microcontroller. In addition it explains the difference between Arduino and AVR microcontrollers in general and how ATmega328 and ATmega2560 microcontrollers relate to Arduino Uno and Arduino MEGA boards.
Difference Between Arduino and ATmega328 AVR
What is the difference between Arduino and ATmega328? In short an ATmega328 is a microcontroller chip found on Arduino Uno boards. ATmega328 microcontrollers are from the 8-bit AVR microcontroller family. The image below shows an AVR ATmega328 microcontroller chip. The exact part number of this chip is ATMEGA328P-PU as found printed on the top of the chip.

The ATmega328 plugs into a socket in the Arduino Uno as shown in the image below. There are some Arduino Uno boards that have a surface mount ATmega328 chip. In this case it is a small square chip soldered on top of the Arduino Uno.

What the Microcontroller Does
On an Arduino, the microcontroller is the main component that does all of the work. When an Arduino sketch is loaded to the Arduino it is actually loaded to memory inside the microcontroller chip. The microcontroller then runs or executes the sketch when the Arduino is powered up or reset after programming.
AVR Manufacturer
AVR microcontrollers were formerly manufactured by a company called Atmel. Atmel was bought out by Microchip, so AVR microcontrollers are no longer an Atmel product, but a Microchip product. What was an Atmel AVR ATmega328 microcontroller is now a Microchip AVR ATmega328 microcontroller.
Difference Between Arduino and ATmega2560 AVR
What is the difference between Arduino and ATmega2560? An ATmega2560 microcontroller is the microcontroller found on Arduino MEGA 2560 boards. Like the ATmega328 found on Arduino Uno boards, the ATmega2560 microcontroller is also from the 8-bit AVR microcontroller family. It differs from the ATmega328 in that it is only available in a surface mount package, so can't be inserted into and removed from a socket on the Arduino. It also has more memory, more pins and more built-in hardware peripherals than the ATmega328.
The image below shows an Arduino MEGA 2560 with ATmega2560 microcontroller chip.
