ok a while ago i was playing with some nice grunty shift registers on an 08M they were a UCN5841 part which is roughly equivalent to a '595 with 8 darlington drivers and back emf diodes, these will drive common anode seven segments quite well and i made a single digit counter, dice etc in quite a little bit of space for an 08M picaxe chip using 3-4 I/O's to drive 8 maximum
after having a play with serial i got it displaying numbers from a serial stream flashing 1 digit at a time and not much else.
then an idea struck paydirt
using a bunch of ucn5841's (nine at one stage) i was able to use a master register to address another 8 registers and hence displays via the strobe lines using common data and clock lines the first one was a little unstable to start with, using all ucn5841's for display drivers and address eg i had duplicates miss strobing etc the first prototype was an arse both visibly and electrically
the image is my very first unit using mostly fresh components however one display blew so a junk one is substituted
after that one i decided to make it a bit neater, i got a nice instrument case more fresh components however i wanted to try a different addressing IC, this time using a 74HC595 which is a bit more... logic level... unlike the ucn5841's which are designed to drive power, once i got that working it was brilliant
at this point the displays are ok for numbers that was just a limitation of my (then) inefficient code, letters could be displayed by sending ASCII codes that represented the layout of the display
however my current code can have a good 20 letters, the 10 numbers and colon plus a beep character (ASCII standard)
i have a web folder dir listing full of pics at
www.resistorhelper.org/imgs/leddisp/the input is 8 bytes of 8 bit serial at 4800 baud which can be sent at least 3 times per second with no problems eg the update rate is about 3 and a bit Hz and will work off PC rs232 or any microcontroller that sends at least 8 bytes at 4800 baud with these characters
the "bell" character (up to 8 and the display clears, this does make the update delay by about 50mS per bell character)
the standard numbers 0 through 9 (ASCII 48 - 57) colons (58), and capital ASCII letters A through U with three characters with alternate symbols
the first character on the display can be used to select a decimal point on the other displays if its ASCII "Q" it sets the next door one on R the one after that and so on, up to the last two displays which shouldnt really be used
granted there are cheaper displays (these are several hundred dollars worth a pop for all the parts even with a discount from brightsparks) but this project is one of my more advanced things i have done, its brighter (especially the big blue one i made) and bigger digits than a little 16x2 LCD display plus its extremely versatile and robust you can drive huge displays, relays or lamps even, with the UCN5841 driver chips i got on it