DIY 7 segment digits from leds and 74HC595s

Hi,

I am trying to make a board for the local MX track that shows the amount of time left in each practise heat. I hope to make some rather large(ish) 7 segment digits from standard 5mm leds.
I have never tried to used transistors or shift registers before, but I have tried to read up on them and I have come up with the attached schematic. Could I ask you guys to take at look at it and see if it has any obvious newbee mistakes?

That would work.
Or use two TPIC6B595s to sink current from LED strips, make the digit segments 3, 6, or 9 LEDs tall, double width if you want to make them fatter.
No multiplexing or extra transistors needed.
This card I offer will drive up to 12 digits using that chip, and includes a 328P for arduino functionality. Available as a kit or assembled. Ships worldwide.
http://www.crossroadsfencing.com/BobuinoRev17/

Thank you CrossRoads for the quick reply. I am glad that my design is usable :slight_smile:

The TPIC6B595 would have made the project much simpler, so I will definately consider them for a v2. But for now, I already have the components for this version, so I will stick to them...also gives me a chance to polish my soldering skills will all those transistors and leds :grin:

Hi, I’m not sure your design would work. The problem is those pnp transistors may not switch off when the 595 outputs are high. And the 595 may be damaged by being exposed to the 12V supply. You could use npn transistors to switch them on and a pullup resistors to switch them off. I think you need current limiting resistors on the bases of all those transistors.

It may be easier to use a high-side switch for each digit and have individual switches on the low side. Then you could use ULN2803 instead of 8 individual npn. Or TPIC6*595 instead of the 74hc595, as used on CrossRoads’ board.

If you need maximum brightness, avoid multiplexing and use 2 tpic6*595 as Bob suggests.

Paul

Ooh - I missed that. Yes, use TPIC6B595 for the top shift register, with pullup resistor to +12 on each PNP base to turn it off. Or 74HC595 with ULN2803 as 12V buffer.

bomadsen:
Hi,

I am trying to make a board for the local MX track that shows the amount of time left in each practise heat. I hope to make some rather large(ish) 7 segment digits from standard 5mm leds.
I have never tried to used transistors or shift registers before, but I have tried to read up on them and I have come up with the attached schematic. Could I ask you guys to take at look at it and see if it has any obvious newbee mistakes?

I'm not sure you can drive a PNP transistor from a shift register like that.

Even when the shift register is outputting "high" there's a voltage difference between 12V and 5V. Will it switch off? You may need another NPN to drive each PNP.

Thanks guys for taking the time to look at this, I can see that I will need to read up on these suckers a bit more and give it another try.
"I'll be back" quote: The guvenator

Do you plan to expand the display with more digits? If not, the easiest option is not to multiplex. Have one '595 driving each digit through 8 bc337. No high side drivers to worry about!

Don't forget the resistors on the transistor bases. The value should depend on the current flowing through each segment, but I imagine 4K7 will do.

The plan was to extend it to four digits plus some punctuations and status leds, so I will need five 595's if I don't multiplex. I might very well go that route, if not for anything else then for maximum brightness :slight_smile:

And yes, resistors on the base. That is definitely missing from the diagram, thanks.

74hc595 and uln2003 is a better option…

But the pnp… 11v shows on the base, bringing the 7hc595 pin to gnd should switch it on but switching it off (unless you can disconnect a pin allowing the 12v on the emitter to apear on base switching it off…

Gets out the 595 datasheet, what’s the voltage tolerance?

bomadsen:
..extend it to four digits plus some punctuations and status leds, so I will need five 595's if I don't multiplex. I might very well go that route, if not for anything else then for maximum brightness

I would go that way. Change your displays to common anode and use 2 TPIC6BC595s, extending to 5. The "B" "C" variant has the lowest current capability of the TPIC6*595 series, but at 150mA per output, still plenty for your app, and it has same pinout as 74hc595.

TPIC6B595 (20 pins) and 74HC595 (16 pins) do not have the same pinout.

CrossRoads:
TPIC6B595 (20 pins) and 74HC595 (16 pins) do not have the same pinout.

Apologies Bob, apologies bomadsen, I meant the C variant, not the B. I have corrected my earlier post in case it confuses anyone else.

Paul

Thanks for the input. Seems like the general opinion is that the TPICs are the way to go. I will order some, and get back with a schematics that hopefully will work better than the last one :slight_smile:

Mine is posted for my board that drives up to 12, 12V common anode digits.
(i.e. digits made from LED striips - connect anodes to +12, cathode from each segment connects to a TCIP6B595 output)