AVR ATmega Projects

Waveform Generation using AVR Microcontroller (Atmega16) Timers

At times we come across applications or situations wherein we need to generate square waves with the microcontroller. The square wave can be generated by programming a pin which toggles between 0 and 1 with a certain time delay. Alternatively, the inbuilt feature of AVR timers can be used in square wave generation. The advantage […]

Waveform Generation using AVR Microcontroller (Atmega16) Timers Read More »

Serial communication (USART) with different frame size using AVR microcontroller

The previous article explains serial communication using 8-bit data transfer. AVR microcontroller also supports serial data transfer with frame size of 5, 6, 7 and 9 data bits. The size of data frame can be adjusted according to application. For example, consider a system that needs to transmit only ASCII codes as data. In this

Serial communication (USART) with different frame size using AVR microcontroller Read More »

How to use External (Hardware) Interrupts of AVR Microcontroller (ATmega16)

This article introduces the concept of interrupts and the different types of interrupts in AVR Microcontroller (ATmega16). Interrupt as the name suggests, interrupts the current routine of the microcontroller. Microcontroller executes instructions in a sequence as per the programs. Sometimes there may be a need of handling planned and higher priority events instantaneously that might

How to use External (Hardware) Interrupts of AVR Microcontroller (ATmega16) Read More »

How to interface LED with AVR Microcontroller (ATmega16)

ATmega16 has 32 I/O pins to communicate with external devices.  Before interfacing with external devices, these pins must be cofigured as input or output pin. This article demonstrates the basic I/O operation of ATmega 16 using LEDs. All the four ports can be configured to read an input from some external device or to give

How to interface LED with AVR Microcontroller (ATmega16) Read More »

How to interface keypad with AVR microcontroller (ATmega16)

Keypad is most widely used input device to provide input from the outside world to the microcontroller. The keypad makes an application more users interactive.  The concept of interfacing a keypad with the ATmega16 is similar to interfacing it with any other microcontroller. The article of Interfacing keypad with 8051 can be referred for detailed

How to interface keypad with AVR microcontroller (ATmega16) Read More »

How to use I2C / TWI (Two Wire Interface) in AVR ATmega32

This article explores the TWI interfacing between two ATmega32 controllers. Readers are advised to go through TWI Communication and TWI registers of ATmega32 before going further. TWI works in four modes: 1.        MASTER as a transmitter. 2.        MASTER as a receiver. 3.        SLAVE as a receiver. 4.        SLAVE as a transmitter. Generally modes 1 &

How to use I2C / TWI (Two Wire Interface) in AVR ATmega32 Read More »

How to interface serial ADC0831 with AVR microcontroller (ATmega16)

ADC is an electronics device that converts the analog signals to digital number proportional to the magnitude of voltage. The ADC chips like ADC0804, ADC0809 etc., give 8-bit digital output. The controller device needs eight pins to receive the 8-bit data (For more details about ADC refer to Using Inbuilt ADC of AVR). Some applications

How to interface serial ADC0831 with AVR microcontroller (ATmega16) Read More »

How to configure Watchdog Timers of AVR Microcontroller (ATmega16)

Some high end applications require multiple or critical calculations to be done by the microcontroller. This may lead to cases when the controller enters into wrong or infinite loops. As a result of this, the system either hangs up or gets crashed. The solution to overcome these situations is to automatically reset the system whenever

How to configure Watchdog Timers of AVR Microcontroller (ATmega16) Read More »

Scroll to Top