Graphical LCD Project
I’ve been playing with the CFAX 128 x 64 pixel graphical LCD from Spark Fun. This is a really nifty graphical display that includes a four-wire resistive touch screen and white backlight. The picture here (click it to see the larger version) has the backlight turned off and you can see it’s still pretty visible.
I decided to write some simple code to draw text and rectangles. The picture shows that stuff pretty well. I also got the touch screen logic working but that isn’t really demonstrated in the picture.
I’ve hooked it up to an AVR Mega 88 on a prototyping board, which gives just barely enough output pins to drive it. I will probably switch to a 40-pin Mega 16 to complete my experiments, as I want to use it with my on-going CAN project; it will require a few more i/o pins that what the 28-pin Mega 88 has available. The idea is to make the LCD available to all CAN nodes in a larger, multi-processor robot suitable for the SRS Robomagellan contest or something similar.
The display has its own memory buffer for the 128 x 64 pixel grid and also has about ten different icons above the top row. It’s pretty simple to interface, and fortunately Spark Fun has some useful sample code here. I also found some sample code from the original manufacturer here.
I also found a nifty article in a recent Circuit Cellar that gave me some inspiration. Look for the issue that covers various video, LCD and LED display projects. My long-term goal is to assemble all of my AVR software into an open source package under the GPL. When I get around to doing it I’ll post it here.