Electronics > Projects, Designs, and Technical Stuff

8 digit LED display

(1/3) > >>

williefleete:
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

Mechatrommer:
nice

GeoffS:
Any more details on your design?
I've been looking for a 6 digit display that I can build into a digital readout for a mill (DRO) similar to the one shown below.
I've looked at doing something similar to this unit at Sparkfun but with more/bigger digits.

I'd need a minimum of 3 of these for typical milling operations with a CPU board to drive them.

EEVblog:

--- Quote from: williefleete on November 28, 2010, 10:58:21 am ---

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 



--- End quote ---

That looks spookily similar to my own LED clock project. I might show this on the live blog tomorrow.

Dave.

Zero999:
If you use half common cathoe and half common anode displays you can drive eight seven segment displays using  11 pins and no additional ICs.

Navigation

[0] Message Index

[#] Next page

There was an error while thanking
Thanking...
Go to full version