In this two series of tutorial, we will provides you with the information on the tools and the basic steps that are involved in using the C programming language for the Atmel AVR microcontrollers. It is intended for people who are new to this type of microcontrollers. The AVRJazz Mega168 board will be use in this tutorial, however this information could be applied to other AVR family as well.
The objective of this project is to log one’s heart rate to an SD card. This could be done for extended periods, including during sleep, for some pretty interesting investigation. What is shown in the video is the logging of a treadmill session with periods of jogging and walking to see the fluctuations in heart rate.
Logging Heartrate with an AVR and microSD Card – [Link]
This project shows the user of a simple thermistor to measure temperature and display the temperature graphically on a Nokia 3310 LCD. Thermistors are incredibly cheap (about 50 cents), and provide fraction of a degree accuracy. The Nokia 3310 Library originally written by CC Darmini was modified yet again, this time to use per pixel access while maintaining the ability to draw text.
AVR Based Digital Thermometer with Nokia 3310 LCD and Thermistor - [Link]
This project allows one to use a universal IR remote to control an AVR based Etch A Sketch. For display, we use the Nokia 3310 LCD ($10 from SparkFun.com). The Etch A Sketch functionality is simply the ability to draw in a straight line up, down, left, right. The purpose of this project was to demonstrate the improvements to CC Dharmani’s NOkia 3310 library that allows per pixel access using a pixel buffer. The improved version has been included in the source of this project *
AVR based Etch A Sketch with Nokia 3310 LCD – [Link]
SD / MMC cards support a SPI mode. By connecting it to an AVR’s SPI port, it can be used for general storage relatively easy. Here I demo the use of an SD / MMC card as general storage for electronics projects. I am using it with a 1MHz Atmel AVR atmega8, standard 2GB microSD card with adapter sleeve, and using a PWM port as a cheap DAC for sound output. I first loaded the SD card with pre-recorded sounds at 8KHz and 8-bit unsigned linear. I then read them in real time from the SD card and write the values to the OCR so that they set the duty cycle on a PWM port. I use a simple RC low pass filter as a cheap DAC (Digital to Analog Convertor) that is output to a speaker.
Use an SD or MMC card on your next AVR project - [Link]
Last week on hack-a-day I saw their post on an LED Menorah that was powered by a 9v battery with the lights controlled by dip switches. I thought to myself, “gee, that’s not a very creative design”. There was redemption in the minimalist designs linked too showing a menorah soldered to a tiny2313 and one soldered to an LM2913, both without a circuit board.
LED Menorah powered by AVR tiny13 – [Link]
Here is my experiment with i2c bus for interfacing serial EEPROM (24C256) and RTC (DS1307) using AVR microcontroller ATmega128. The circuit is also provided with an RS232 port for connecting with PC to send commands for reading/writing EEPROM or setting date/time in RTC (Click on images to enlarge them).
Interfacing RTC & serial EEPROM using i2c bus, with ATmega128 uC – [Link]
For those who are trying to make AVR kit at home, an AVR programmer which can be simple to make will be really useful, as it’ll avoid buying the programmer!! Here I’m giving a few webpage links on how to make a programmers yourself.
DIY AVR Programmers - [Link]
Here is a very simple project of controlling a small DC-motor (taken from an old personal cassette player) with ATmega8. The ATmega8 is having three PWM channels, out of which two are used here. PWM waveforms are fed to MOSFET (RFD3055) H-bridge. Here, direction is controlled using a two-position toggle switch and speed of the motor is controlled by two push-buttons, one for increasing the speed and other for reducing.
Simple PWM DC motor control using MOSFET H-Bridge with AVR ATmega8 - [Link]