I am in India where LEDs are super cheap. I have my 256 x 256 pixel Conway "Life Machine"(TM) circuit which I am thinking to give a display nicer than that small oscilloscope screen. Each LED costs me about a penny, so 256 x 256 would cost me 655.36 dollars. OK, that isn't cheap, let alone the amount of time it would take to solder all those LEDs. Perhaps I won't do it. But I would still like to review if my electronic design would be about right.
We'd be writing this screen serially, so it all is just like an oscilloscope, except I won't need the R2R DAC circuits. To address a pixel, let's say the column line needs to be high and the row line needs to be low. I could use a decoder 4-to-16, or, if we can't get those chips, we use 3-to-8. So, let me design a 16 x 16 display.
simulate this circuit – Schematic created using CircuitLab
This would give me a 16 x 16 = 256 pixel monochrome display.
If I wanted to extend this to 128 x 128 pixels, then I would add another 74HC138 3-to-8 decoder to connect to the !E1 lines for each pair of 74HC[12]38 so I have 7 bit row and column addresses. To extend to full 256 x 256 I would get the 8th address line from the !E0--E2 pair of the secondary 74HC138's again.
This would seem to work and if I'd order a PCB and order the LEDs to be soldered in already (or perhaps have it manually manufactured here in India itself) it would even be feasible.
Is there a simpler method to drive the LEDs?
Is this method insufficient? -- YES it is insufficient. First I thought maybe I don't need the following:
- I suppose I should add (trimmable?) resistors at least on the connections to the ground paths (to the 74HC138 outputs)?
- I suppose I do not need line drivers? That the output power and resistance of all pins of the 74HC[12]38 chips are even?
But then I noticed I need at least an on-off channel (corresponding to the Z-channel on the oscilloscope), not just those X (column) and Y (row) address lines. Of course, duh!
And it was already stated that the current source and sink of those chips isn't sufficient to make the display appear bright. So, we need to insert transistors.
To make this work I would have to replace the 74HC138 on the row lines with 74HC238's also, and using NPN transistors for everything (or should I use PNPs?)
For gray-scale I would need n-bits per pixel, in that case instead of the simple on-off Z strobe that controls the pixel as the row/column addresses scan, I would introduce an R2R DAC of 2, 3, or 4 (or more) bits and drive the Z-input that way.
For RGB color, I would use RGB diodes and in this case a common cathode on the 74HC138 side and replicate this R2R DAC for each color channel.
Is this how it essentially works? Or is there something vastly more simple?