ADX Electronics --> techinfo --> micros --> HG12605 graphical screen appnote

Taken from a posting I made to the Bascom mailing list.

Subject: 128*64 LCD display going
Date sent: Thu, 27 Apr 2000 22:46:29

Following up on yesterday's message...

I wrote some software to get the HG12605 display going - just rough
but it works. Contrary to my guess it took more than 10 minutes
(27:08 actually!) but that was more typing than thinking, and (as I
have learned to expect using bascom) it compiled very first time and
ran exactly as desired. Try that in assembler or C!

For anyone who is interested I will post the code, and a picture of
what the screen should look like
, on my website.

[And a good description on how to drive the module here - that I did later]

Notes on the code:

1. It's bloaty - I have used lots of bit operations to make it
2. It's rough - I have only done the minimum I thought necessary to
make the screen go. It doesn't read the busy status or anything
(technically it should). I write to both chips at once just
because I can. etc
3. Apart from the picture on the display, it's untested. I only
compiled it once!
4. It's running off a 4MHz crystal - but it should work off 12.

Notes on the hardware:

I'm using an Atmel AVR starter kit (AVR001000 or something, an early
version of the STK200) with an AT89S8252 in it - this programs like
an AVR using 8051 hex files. Very handy. I soldered a header strip
onto the display and used ribbon cables to connect that to 2 10-way
header sockets which go onto the AVR board (4 grounds total). Pin
allocations as per file. I steal 5V from the AVR board using a 1-pin
header I soldered onto its reg output pin. There's a 50k pot running
between 5V and -10V (Vdd and Vout) and the wiper goes to Lcd drive
(Vo). 50k is probably too high but it's all I could find and does
work. A separate lab type power supply is running the LED backlight
on 150mA current limit. It all worked first time too, and nothing
has caught on fire yet.



All pages (C) Copyright ADX Electronics 2000-2001.