Let's Make Robots!

lcd-routines in avr-assembler

hi everybody

i know that not many of you are programming theit avr mcus in assembler, but i 've got something for those who do:

when i started using lcd displays, i just copy-pated or includet the file "lcr-routines.asm" and used those routines that i found on mikrokontroller.net

I found those routines very helpfoul to start working on lcd-displays.

the other attachment called "lcd_routines_advanced.asm" is something i wrote, based on the existing lcd-routines, but using the srram of the avr as a buffer.

the problem with the "standart" routines is, that it can take a while to execute some cammands, especially the "clear display" command takes it's time.

so instead of sending everything straight into the display, i send it straight to the my buffer.

if you call the "lcd_buffer_out" routine every milisecond and don't send too much into the buffer ( overflows can occur ), you can avoid a wait-loop.

it you want to get into it, start with the lcd-routines.asm 

the other file is programmed very sketchy, it works for me, but it is a bit more complicated and has several unsolved issues, such as the buffer overflow

 if you happen to speak german, you can get a very nice explanation of everything at http://www.mikrocontroller.net/articles/AVR-Tutorial:_LCD

have fun^^

lcd-routines.asm4.3 KB
lcd_routines_advanced.asm5.38 KB

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Cheers Joker, I don;t use any AVR gear but I do a lot of Assembly programming and it's always nice to have extra reference material.
Just wanted to say thanks for the link to the german site. It seems to be a great resource for AVR programmers and hopefully it will come to use soon.