Theoretically, ganging multiple LED matrices isn't all that mind-boggling, but certainly the wiring begins to go spaghetti-like in short order. In this project, we'll see how to control a two-digit display if you can keep your knitting straight.
Now think about it a moment. If you refer back to the preceding exercise, you'll recall that a single character is 7-rows by 5-columns. And you'll remember that we multiplexed it to keep the number of port pins under control. So, if we want to do two characters, again with multiplexing, we wind up with (in effect) 7-rows by 10-columns.
Instantly the CD4017 CMOS decade counter comes to mind! That's got to be one of the biggest selling chips ever, and all because our species managed to evolve with ten fingers and ten toes. (Most of us; I once read that Marilyn Monroe was possessed of a superfluous little-toe, but had it chopped off before undraping professionally).
Anyway, the scheme is clear: we'll let interrupts under Timer0 command scan each of the ten columns--two 5-column characters--fast enough to give the illusion of simultaneously lit displays. Check out the two schematics:
For the purposes of this exercise, we're simply displaying the numbers 00 through 99, and the include file I've created contains the dot matrix patterns required. But you could certainly show any character, literal, numeral or symbol, using the include files from the previous exercise.
So yes, a lot of wires, but not a bad experiment to get familiar with LED matrices, interrupts, include files and other aspects of the PMP cross-compiler.
Click to get the source code.
Click to get the schematic PDF.
Next Project: LED Matrix -- Horizontal, Two-Digit Display