Close

Adding more colors

A project log for VGA with Arduino

Yet another project trying to generate VGA signals using small avr mcu.

pavelPavel 02/09/2026 at 17:130 Comments

I slightly updated the circuit, adding 3 simple 2-bit resistor ladder DACs, so that now I can output images in 64 colors (RGB 222).

The images are measly 36(or less) by 25 pixels, so are quite blocky. They are taking 900 bytes, thus I can hold only one in 1kB memory of atmega168 chip.
Blockiness is also comes from the fact, that each pixel takes some time to output; in my implementation the for loop is used to retrieve each pixel value from array, and each loop takes 11 cpu cycles, so at 16 MHz, I can output a pixel every 688 nanoseconds, thus effective pixel clock is at 1.4545 MHz, far less than 25.175MHz for standard VGA 640*480@60Hz.

Next is a couple of examples of images produced:

An airport radar tower 

N

Not 
A picture of a Minion:


Not too much to look at, the pictures look better the further away from screen one sees them.

Discussions