Monday, September 22, 2008

NOKIA 3310 LCD interfacing with ATmega8

Hi friends,
using graphic LCD in a project gives itreally a good look and flexibility of displaying different characters and shapes. But, the graphic LCDs are quite costly.
The NOKIA 3310 LCD provides a really low-cost solution to add a small graphic display into your project and also good for learning purpose. The LCD is SPI bus compatible, saving many pins for other uses. It operates at 3.3v.

Here is a small circuit for interfacing the 3310 LCD with AVR microcontroller ATmega8. The schematic includes LCD connection with SPI port of ATmega8 with other connections required by LCD. The 3.3v is generated using adjustable voltage regulator LM317 (I was not having any 3.3v regulator at the moment). An LED is also connected with microcontroller just for making sure that the controller is working, particularly when you don't see anything on the display!

Here is the schematic and the pin details of the LCD:

The connector of LCD is 'touch' type. So, I made a small connecor PCB with tracks touching to the pins of LCD. The pcb was pasted at backside of LCD using cello tapes as shown in the back-view image

Here is a testing with Proteus ISIS Simulation:

The program routines are written in C with ICCAVR compiler. I've created a library for this display. The low-cost, easy availability has made me relly like this display.
I'm going to use it for
doing other stuffs, too!

3310 Library (ICCAVR)
3310 Library (AVR-GCC, winAVR, AVRStudio)
3310 project (CodeVision AVR)
Proteus Simulation Model (Simulation was done with CodeVision AVR Hex file)

Check out my thermometer project with this display:
Thermometer with Nokia3310

Download datasheets:
1. ATmega8
2. PCD8544 - nokia 3310 display controller


Sunday, September 14, 2008

Using M32_Card for Data Acquisition with on-board 8 channnel ADC

Hi friends,
I'm showing here one more application of the home-made M32_Card discussed in my earlier post. The microcontroller of the card is having 8-channel, 10 bit resolution ADC which can be used for analog data acquisition. Using the hyper terminal for the selection of menu, ADC can be selected to display value of the analog voltage applied to each channel (at the 9-pin header pin; 8 ADC channels & 1 GND).
The microcontroller reads the voltage at each channel and sends the data to PC via RS232 cable. At reciving end (PC), the incoming data can be converted into excel format to store the values at regular time intervals.
As shown in the screen-shot of the hyper terminal, I had connected here the 5v Vcc to Channel 0 and an Li cell to channel 7.
The M32 can also send a time impression along with the channel data using the on-board RTC DS1307 to record the voltage variation with time.

The project source code files can be downloaded from here:
Download Source Code


Wednesday, September 3, 2008

DIY AVR Programmers

Hi guys,
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.

- Here is a simple AVR serial programmer, works with PC serial port, easy to make:

For complete info check out the webpage:
AVR Serial programmer from Extremeelectronics.co.in

- For using the serial programmer discussed above, a driver software is required to be installed in your pc. Download it from here:
PonyProg : AVR serial programmer

- If you are using a laptop which doesn't have serial port then you can buy a low-cost AVR USB programmer shown in the figure. Visit this webpage for buying it:

Here is one more option for buying a cheap USB programmer for AVR at around $15 cost:
AVR USB Programmer lite

And if you want to make an USB programmer yourself, check out here an easy to make AVR USB programmer:
DIY AVR USB Programmer

- Atmel has given a detailed document on design of In-System Programmer for AVR. It inclludes the schematic of the programmer. Download this pdf document from here:
In-System Programmer for AVR, from Atmel

- For those who like pc parallel port better, here is a page containing data on how to make a parallel port AVR programmer along with the download for the pc:
Parallel port programmer for AVR

- Here is another parallel port programmer from AVRdude:
AVRdude parallel port programmer

- One more parallel port programmer using AT90S1200 microcontroller, with schematic and the .asm file. (Note: it need a pre-programmed AT90S1200 IC). Check out more on the webpage:
Psychogenic PPI AVR Programmer

- Apart from these, some more free designs are there, you'll find them by googling!! And if you want to buy, there are plenty of them available!!!

Hope this info is useful for your project work..