Skip to content

Arduino Atmel 8 bit AVR MCUs

Pekka Nikander edited this page Jun 3, 2013 · 2 revisions

There are several different versions of the official Arduino boards from SmartProjects, SparkFun Electronics, and Gravitech. What is common to most of them is that they use Atmel 8-bit AVR micro controllers. Only the some of the newest boards, such as Arduino Due, use newer, 32-bit micro controllers.

Quoting Wikipedia, the AVR is a modified Harvard architecture 8-bit single chip micro controller which was developed by Atmel in 1996. The AVR was one of the first microcontrollers to use on-chip flash memory for program storage. In the AVR, the program code and data are stored in separate physical memory systems that appear in different address spaces, but having the ability to read data items from program memory using special instructions.

The AVR line can normally support clock speeds from 0 to 20 MHz. Lower powered operation usually requires a reduced clock speed. All recent AVRs feature an on-chip oscillator, removing the need for external clocks. Some AVRs also have a system clock prescaler that can divide down the system clock by up to 1024. This prescaler can be reconfigured by software during run-time, allowing the clock speed to be optimized. Since all operations (excluding literals) on registers R0 - R31 are single cycle, the AVR can achieve up to 1 MIPS per MHz, i.e. an 8 MHz processor can achieve up to 8 MIPS.

While AVRs are still very popular in many micro controller applications, for new applications today it may be better to choose a 32-bit ARM-based Cortex M-series micro controller, unless the very low cost or very low energy consumption is required. The lowest end AVRs work with a 0.7V or 1.8V voltage supply, and use considerably less than 1 mA at 1 MHz in active mode, and typically at most tens of micro amperes if idle but retaining the memory. This can be compared to a 32-bit Cortex-M0, which typically consumes some 10 mA at 1 MHz, over 100 mA when operating at its full operating frequency of 48 MHz, and at least a few mA when sleeping but keeping the memory and peripherals active. The cost structure is similar, with the lowest cost AVRs costing just a few cents while a Cortex-M0 being priced around $1 in volumes.

Clone this wiki locally