Features of AVR|AVR Microcontrollers

What is AVR?

AVR Stands for Alf (Egil Bogen) and Vegard (Wollan) RISC processor.

AVR microcontroller is an enhanced RISC (Reduced Instruction Set CPU) high-speed 8-bit microcontroller with built-in Flash developed by ATMEL in 1997.

Read about: RISC Vs CISC

RISC does not simply reduce the number of instructions but increases the speed of computing by making the structure of the computer simpler and more rational.

von neumann vs harvard architecture

8051 Architecture


A brief history of the AVR microcontroller

The basic architecture of AVR was designed by two students of Norwegian Institute of Technology (NTH), Alf-Egil Bogen and Vegard Wollan, and then was bought and developed by Atmel in 1996.

Atmel says that AVR’s name is nothing more than a product name, but it might stand for Advanced Virtual RISC, or Alf and Vegard RISC (the names of the AVR designers).

There are many kinds of AVR microcontrollers with different properties.

Except for AVR32, which is a 32-bit microcontroller, AVRs are all 8-bit micro-processors, meaning that the CPU can work on only 8 bits of data at a time.

Data larger than 8 bits has to be broken into 8-bit pieces to be processed by the CPU.

One of the problems with the AVR microcontrollers is that they are not all 100% compatible in terms of software when going from one family to another family.

To run programs written for the ATtiny25 on an ATmega64, we must recompile the program and possibly change some register locations before loading it into the ATmega64.

AVR Classification

AVRs are generally classified into four broad groups: Mega, Tiny,Special purpose, and Classic.

Mega family microcontrollers are widely used.

Also, ATmega32 is powerful, widely available, and comes in DIP packages, which makes it ideal for educational purposes.

The following is a brief description of the AVR microcontroller.

AVR features

The AVR is an 8-bit RISC single-chip microcontroller with Harvard architecture that comes with some standard features such as on-chip program (code) ROM, data RAM, data EEPROM, timers and I/O ports.

AVR microcontroller block diagram

Most AVRS have some additional features like ADC, PWM, and different kinds of seri- al interface such as USART, SPI, 12C (TWI), CAN, USB, and so on.


AVR microcontroller program ROM

In microcontrollers, the ROM is used to store programs and for that reason, it is called program or code ROM.

Although the AVR has 8M (megabytes) of the program (code) ROM space, not all family members come with that much ROM installed.

The program ROM size can vary from 1K to 256K at the time of this writing, depending on the family member.

The AVR was one of the first microcontrollers to use on-chip Flash memory for program storage.

The Flash memory is ideal for fast development because Flash memory can be erased in seconds compared to the 20 minutes or more needed for the UV-EPROM.

AVR microcontroller data RAM and EEPROM

While ROM is used to store program (code), the RAM space is for data storage.

The AVR has a maximum of 64K bytes of data RAM space. Not all of the family members come with that much RAM.

the data RAM space has three components: general-purpose registers, V/O memoгу, and internal SRAM.

There are 32 general-purpose registers in all of the AVRS, but the SRAM’s size and the I/O memory’s size vary from chip to chip.

Atmel whenever the size of RAM is mentioned the internal SRAM size is meant.

The internal SRAM space is used for a read/write scratch pad.

In AVR, we also have a small amount of EEPROM to store critical data that does not need to be changed very often.


AVR microcontroller I/O pins

The AVR can have from 3 to 86 pins for I/O. The number of I/O pins depends on the number of pins in the package itself.

The number of pins for the AVR package goes from 8 to 100 at this time.

In the case of the 8-pin AT90S2323, we have 3 pins for I/O, while in the case of the 100-pin ATmega1280, we can use up to 86 pins for I/O.

AVR microcontroller peripherals

Most of the AVRS come with ADC (analog-to-digital converter), timers, and USART (Universal Synchronous Asynchronous Receiver Transmitter) as stan- dard peripherals.

the ADC is 10-bit and the number of ADC channels in AVR chips varies and can be up to 16, depending on the number of pins in the package.

The AVR can have up to 6 timers besides the watchdog timer.

The USART peripheral allows us to connect the AVR-based system to serial ports such as the COM port of the x86 IBM PC.

Most of the AVR family members come with the FC and SPI buses and some of them have USB or CAN bus as well.


AVR family overview

AVR can be classified into four groups: Classic, Mega, Tiny, and special purpose.

Classic AVR (AT90SXXXX)

This is the original AVR chip, which has been replaced by newer AVR chips.

Mega AVR (ATmegaxxxx)

These are powerful microcontrollers with more than 120 instructions and lots of different peripheral capabilities, which can be used in different designs.

Some of their characteristics are as follows:

  • Program memory: 4K to 256K bytes
  • Package: 28 to 100 pins
  • Extensive peripheral set
  • Extended instruction set: They have rich instruction sets.


Tiny AVR (ATtinyxxxx)

As its name indicates, the microcontrollers in this group have less instructions and smaller packages in comparison to mega family.

We can design systems with low costs and power consumption using the Tiny AVRs.

Some of their characteristics are as follows:

  • Program memory: IK to 8K bytes
  • Package: 8 to 28 pins
  • Limited peripheral set
  • Limited instruction set: The instruction sets are limited. For exam- ple, some of them do not have the multiply instruction.


Special purpose AVR

The ICs of this group can be considered as a subset of other groups, but their special capabilities are made for designing specific applications.

Some of the special capabilities are: USB controller, CAN controller, LCD controller, Zigbee, Ethernet controller, FPGA, and advanced PWM.


AVR product number scheme

All of the product numbers start with AT, which stands for Atmel.

Now, look at the number located at the end of the product number, from left to right, and find the biggest number that is a power of 2.

This number most probably shows the amount of the microcontroller’s ROM.

For example, in ATmega1280 the biggest power of 2 that we can find is 128; so it has 128K bytes of ROM.

In ATtiny44, the amount of memory is 4K, and so on.

Although this rule has a few exceptions such as AT90PWM216, which has 16K of ROM instead of 2K, it works in most of the cases.

AVR Grades

AVR microcontrollers are available in 3 grades.

Low-grade Tiny series: mainly Tiny11/12/13/15/26/28 etc;

Mid-range AT90S series: mainly AT90S1200/2313/8515/8535, etc.; (being phased out or transformed into Mega)

High-grade ATmega: mainly ATmega8/16/32/64/128 (storage capacity of 8/16/32/64/128KB) and ATmega8515/8535, etc.

Other microcontrollers & Manufactures

There are many other popular 8-bit microcontrollers besides the AVR chip.

Among them are the 8051, HCS08, PIC, and Z8.

  1. The AVR is made by Atmel Corp.
  2. Microchip produces the PIC family.
  3. Freescale (formerly Motorola) makes the HCS08 and many of its variations.
  4. Zilog produces the Z8 microcontroller.
  5. The 8051 family is made by Intel
  1. Microcontroller Architecture

What is AVR microcontroller used for?

AVR microcontroller is used for high speed signal processing operation inside an embedded system.

Is AVR microcontroller or microprocessor?

AVR and ARM comes under the family of micro-controller. But ARM can be used as both Microcontroller or as Microprocessor. ARM micro-controller and AVR micro-controller differs from each other in terms of different architecture and different sets of instruction, speed, cast, Memory, Power Consumption, Bus Width etc.

Read More on Microcontroller

  1. Features of AVR|AVR Microcontrollers
  2. 8051 ARCHITECTURE|8051 Microcontroller Architecture
  3. 8051 Microcontroller Architecture|RISC and CISC CPU Architectures|HARVARD & VON- NEUMANN CPU Architecture
  4. Microprocessor VS Microcontroller| Comparison of Microprocessor and Microcontroller|Difference between Microprocessor and Microcontroller
  5. Addressing modes of 8051 Microcontroller|8051 Addressing Modes
  6. 8051 Microcontroller Instruction Set|KSEB Sub Engineer Notes
  7. 8051 Microcontroller MCQ|8051 Questions and Answers
  8. Microcontroller|Types of microcontroller
  9. 8051 Microcontroller Notes pdf|8051 microcontroller pdf
  10. Interrupts in 8051|Interrupts in 8051 Microcontroller

Books for Microcontroller 8051

  1. KSEB Sub Engineer and AE Books
  2. The 8051 Micro controller 3rd Edition,by Kenneth Ayala
  3. The 8051 Microcontrollers & Embedded Systems, by Mazidi
  4. 8051 MICROCONTROLLER AND APPLICATIONS FOR BSC
  5. Microcontroller & Embedded Systems for BE

Leave a Comment

error: Content is protected !!