In this article, we will become familiar with the AVR Microcontroller. We will discuss every detail of the AVR microcontroller. What are its basic features and architecture? We will also learn about the programming strategy of the AVR microcontroller and the basic introduction of the AVR Studio software.
AVR MicrocontrollerAn AVR microcontroller is an advanced minicomputer integrated on a small chip with a processor, memory, and programmable input and output peripherals. The main function of an AVR microcontroller is to provide digital control over any type of system (electrical, mechanical, or automotive), different devices, industrial plants, and most electronic gadgets and appliances. The AVR microcontroller is the first on-chip flash memory and comes in 8-bit, 16-bit, and 32-bit integrated chips.
AVR Microcontroller’s HistoryIn 1996, ATMEL designed and developed the AVR series of microcontrollers. These are more advanced and sophisticated than PIC microcontrollers. Their architecture was first designed by two students, Alf-Egil Bogen, and Vegard Wollan, at the Norwegian Institute of Technology. This term stands for Alf-Egil Bogen and Vegard Wollan’s RISC (reduced instruction set computing) microcontroller, or AVR for short. AVR microcontrollers are divided into six categories, which are listed below:
In this section, we will discuss the features of the ATMEGA32 microcontroller by ATMEL. The ATMEGA32 microcontroller comes with the following features:
32K Bytes of flash memory 1024 Bytes EEPROM 2K Byte of SRAM 8 channels, each f 10-bits ADC 32 general purpose I/O lines and registers JTAG interface Internal & external interrupts Serial programmable USART TWI interface 4 PWM channels SPI serial port Operating voltages: 4.5 V – 5.5 V Operating frequency: 16MHz Table 1: Features of ATMEGA32 Microcontroller Architecture of AVR ATMEGA32The AVR microcontroller, Atmega32 is a low-power, efficient, and high-performance integrated chip that comprises of an advanced virtual RISC architecture. It can interpret 6 million instructions per second (MIPS). AVR Atmega32 is a 40-pin integrated chip in which 32 pins are input/output pins in the form of four ports: PORTA, PORTB, PORTC, and PORTD, and others are voltage supply, ground, analog reference, crystal oscillator, and reset pins. Each port provides a bi-directional I/O interface and comprises 8 pins, each of which is 8 bits wide.
Pin configuration of ATMEGA 32 Interface Functions of AVR Microcontroller Interface and pins Function Reset This pin is in the active-low configuration. It activates at 0 volts and resets the microcontroller to its initial state. PORTA Converts analog values to digital language so ATMEGA32 can understand. ADC Pins A0 to A7 are ADC pins. AREF The reference voltage pin is used as an external reference for ADC pins. AVCC Supplies voltage to the ADC pins. GND Two pins act as GND for ATMEGA32. VCC The main supply is 5 volts DC for ATMEGA32. Frequency The operating frequency is 16 MHz; for this, a crystal oscillator is connected to XTAL1 and XTAL2 using a 22 pF capacitor. TWI interface This interface provides serial communication through two bi-directional bus lines. JTAG Useful for programming, single-step testing, and debugging the ATMEGA32. ISP Useful for programming using dedicated pins. SPI Provides serial communication between ATMEGA32 and other devices. AVR Microcontroller PinoutThe following table will help you in understanding the functions of each and every pin.
PIN NO.The AVR ATMEGA32 is a programmable integrated chip, which is why it is necessary to program ATMEGA32 to operate it for the required applications. For the programming of an AVR microcontroller, the simplest way is to use AVR Studio.
AVR StudioAVR Studio is an integrated development environment by ATMEL for developing different applications as per requirements. We can use C or assembly language to build up codes for AVR microcontrollers.
To build a project on AVR Studio, follow the steps below:
After the generation of the HEX file, store the program on the AVR microcontroller. For this, you have to dump the HEX file into AVR by using the programmer. The common programmers used for AVR microcontrollers are AVRISP and AVRISP2.
AVR Microcontrollers ApplicationsAVR microcontroller can be used for any type of project application such as:
Signal Sensing Data Acquisition Motion Control Interface motors LCD Displays Interface sensors and transducers Interface GSM and GPS systems Automation and control of industrial plants. Automation of electrical and mechanical systems. Automation of heavy machines Development of UAVs (Unmanned Aerial Vehicles) ConclusionIn this article we have discussed the following topics:
You may also like to read about other AVR Microcontrollers:
Related Articles
If you liked reading this article, there are similar articles provided in the list below:
In the next tutorial, we will talk about AVR Studio 6 and how to create our first project using AVR Studio 6. For more information, keep visiting our blog. In case you face any issues, leave a comment below.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4