Newsgroups: sci.electronics From: spcecdt@deeptht.santa-cruz.ca.us (John DuBois) Subject: Re: Silly lights Date: Wed, 25 Sep 1991 02:29:13 GMT In article <1991Sep22.215758.19145@rose.uucp>, alain.lachapelle@rose.uucp (alain lachapelle) writes: + +Hello everyone. + + For XMas I'd like to build a silly light system that would be +controlled by a PC. Up to about 256 LEDs. Interfaced to the parallel +port. I thought of using 4ins-16outs 4514s that would be receptive to +whatever data is sent along the parallel port. Is there a better way of +addressing that amount of LEDs? + + Thanks for any suggestions, + + Alain +--- I interfaced a 16x16 column-scanned LED array to a PC parallel port by using 3 bits of the parallel data to select one of 5 4-bit latches (4 of which were double buffered), 4 bits as the data for the selected latch, and 1 bit to latch the second layer of buffers. One of the latches drove the column address, while the other 4 drove the 16 lines of row data. I latched the data with the Centronics ~STB signal. In operation, I'd write row data to the 4 first-layer latches, and then write a byte which would simultaneously select a new column address and strobe the second layer of latches, presenting the data to the selected column. The entire sequence took 5 writes. I extracted the 8x8 font from my CGA card and used it to write 4 characters to the display. Going through Turbo C's parallel io routines, and in turn through the BIOS, it used most of the CPU time of an 8 MHz XT to matrix-scan the display. It could be sped up by going straight to the parallel hardware, doing it in assembly, adding a matrix-scanner to the external hardware, etc. Note that if you're going through the PC BIOS, you need to acknowledge the ~STB with an ~ACK. You should also bring SELECTED high, BUSY low, PAPER OUT low, and ~ERROR high. Laying down 512 pads for the LEDs and soldering it all up was one of the less exciting things I've done, but the end result was fun :-) John -- John DuBois spcecdt@deeptht.santa-cruz.ca.us KC6QKZ «More information about the above described LED matrix