This memory plays the same role as the RAM in your PC, providing the ATmega328P chip with temporary memory to store data and variables as it runs through code. You can learn about the differences between volatile and non-volatile memory on the MUO website. The ATmega328P is equipped with just 32kB of flash memory, though this is enough for plenty of code. By contrast, your PC's Intel or AMD CPU is likely a CISC (complex instruction set computer) processor. RISC stands for 'reduced instruction set computer' and is a type of processor designed to simplify the individual tasks a computer performs.
Pin Count: 28 or 32 (depending on the package type)Įach of these different specifications plays its own role in making the ATmega328P so well-suited to use with development boards like an Arduino.CPU: 8-bit AVR with a maximum speed of 20MHz.Let’s start with the basic specs to give you an idea of how the ATmega328P shapes up. We’ve broken these down to make it easier to understand the limitations and restrictions of this chip. There are a number of specifications to be aware of before you start writing code for your microcontroller.
The ATmega328P has a surprisingly dense datasheet for such a small chip.