Added : November 03, 2010
Generate VGA graphics using an AVR microcontroller
and an external frame buffer
Microcontrollers are well suited to display information on analog
VGA monitors
If you have been working on microcontroller projects for any length of
time, then you know that it can be difficult to display a large amount
of data, especially when it contains more than just plain text. There
are limits to how much useful information you can display on a basic
character LCD, or even a dot matrix LCD, since most have low resolution,
no color, and a poor refresh rate. I came up against this problem when
working on a robotics project that needed to display a color image
captured from a small camera and decided to see how much effort it would
take to create an image on a VGA monitor using only a microcontroller
to "bit bang" all of the necessary signals.
It took some time to learn how the five signals used on an analog VGA
connection made an image appear on the screen, but the end results were
much better than anticipated, providing a crisp 256 by 240 image on the
monitor in 256 colors. Although it does take some intensive cycle
accurate assembly programming, the basic coding is not very difficult to
understand once you have learned what the monitor expects. In fact,
making a microcontroller drive a VGA monitor is much easier than
creating a video signal for a television because the VGA monitor does
all of the difficult color coding for you as long as you send the video
signals and sync pulses at precisely the right time. "Precisely" is the
key!
The final version completed on a solderless breadboard