This is version 2 of the Graphics Display
.In this version, each pixel has its own memory and we work with 16-pixel rows, instead of 4-pixel cells, making the controlling circuitry a little less expensive.This project features a 16x8 pixels, 16-color graphical display.The pixels are implemented with 128 RGB LEDs, neatly arranged so the bus lines are hidden from view. Each row appears inside a box with little visual interference in the matrix.Individual pixels are addressable and their colors can be set and queried by a controlling circuit.As an example, this project has a circuit that randomly changes colors of the LEDs and a set of manual controls if the user wants to play "pixel art".Anyone willing to use this to make CircuitVerse play PONG? :-)Differences between v1 and v2:In v1 the pixel cells do not contain memory, ie, the display RAM is separate from the display itself, so technically you can feed the display data from anything, not just RAM. It also means you could have two RAMs populated with different data and swap them as input to the pixels with a gigantic multiplexer, thus having a double-buffered animation! A drawback of this approach is that the controller circuitry ends up a bit more complex and the size of the pixel cells is more limited (in order to keep the matrix free of lines).In v2 each pixel has its own memory, making the controller circuit simpler and allowing us to remove vertical lines from the display matrix. However, in order to display something you must populate the display RAM and there is no possibility of double-buffer.