Driving 7-segments

I'm trying to use transistors to drive the 7-segment LEDs using my Arduino Uno and Max7219. My project works perfect with small 7-segment LEDs using the supply from Arduino. However when I use 14V external supply for bigger display, (I have 14 LEDs per segment, I connected 2 lots of 7 LEDs in series and connect them in parallel), the LEDs are ON all the time. I used UDN2003 to drive DIGITS 0 to 7, and 7x PNP transistors to drive SEGMENTS A to G. I have attached the diagram of my project. Many thanks for your help.

What is the output voltage of the 74LS04 when it is HIGH? What voltage does the PNP transistor BASE need to switch it OFF?

Did you build these 7 seg displays yourself? Are they common anode, or could you make them common anode?

If so, I would suggest using tpic6b595 chips to drive them, one chip per digit.

The wiring at the 74LS04 is too vague. What is going on there? How are the conductors really routed to the UDN2003 and discrete transistor(s)?

You need high-side switches. Turning off pnp transistors would require +14V at their bases what none of your gates can provide.

Thanks PaulRB for your reply, I am using common cathode.

You just totally missed the point, see reply #2. To drive the transistor bases that way, you would need an open collector driver.

For common cathode, your wiring appears correct, so I'm not sure what point you are making about that. I didn't check your digit driver IC to see if it correct...

It's an interesting, but unusual idea to use the MAX IC as a driver, so you need to post complete, accurate schematics if you continue to have problems. The MAX IC outputs are designed to drive LEDs directly, not logic.

herbscharz many thanks for your reply, the output voltage of 74LS04 with respect to ground is 2.95V. According to Datasheet of BC557, Vbe sat is voltage is -650mV, Vce sat is -300mV, Vbe voltage -750mV. The OPEN voltages are Vcbo -50V, Vceo is -45V and Vebo is -5V.

Well, 2.95V into your transistor circuit would keep it constantly turned on. Vbe is between emitter and base, so the turn on voltage is approximately 14V-650mV = 13.350 V.

That's the voltage relative to the emitter which is on +14V.

Yes, transistors can only "see" 3 voltages, the relative voltages on their three pins. They aren't omniscient and magically know the voltages in other parts of the device they're in.

Hi aarg, many thanks for your reply. The DIGITS and SEGMENTS output of MAX7219 are connected to the INS of 74LS04 and the OUTS from connected to UDN2003 for DIGITS, and to the base of PNP transistor for the SEGMENTS. The circuit works ok with this setup, only that it doesn't work anymore with higher voltage for bigger digit display.

Edit - Do you understand the problem?

Oh sorry, I just joined the forum just now. Yes will post the schematic diagram, my apologies.

Since the problem is localized, it would be okay to skip the schematic for the sake of this one issue. But we need to know that you understand it.

Regarding the MAX, I would not be comfortable using it that way without some more investigation of the output drive characteristics. Otherwise, your circuit might work but have reliability problems. The drive pins on that IC are not designed to provide pull ups and downs because those are not needed for LED drive. So if they do, it's an incidental artifact of the design, that would not be guaranteed or specified by the manufacturer.

Without proper pull up/downs, it can not reliably drive CMOS logic directly.

I'm just a newbie so don't fully understand the problem yet. I need to do more research. Thank you you for sharing your knowloedge.

Hi,
Welcome to the forum.

I don't think so, we need a proper schematic to see where @elmero_01 has connected his supplies with respect to the other components.
If the LS04 is on a 5V supply then the transistor will never switch off.

So lets all get on the same page with a diagram.
@elmero_01 We need to see on your diagram, ALL voltage supplies and gnds, as well as pin labels on the ICs.
Only draw one PNP transistor, but show which pins of the LS04 you are using.
What is the current consumption of your segments?
How many LEDs and what config are in each of your segments?

Thanks.. Tom... :smiley: :+1: :coffee: :australia:

Yeah, I guess you're right. It's quite a complex project for a self-professed newb.

Did you mean to say ULN2003 or perhaps UDN2981 or ULN2803?

ULN2003 has only 7 outputs and you need 8, so I guess you meant ULN2803 which has 8.

UDN2981 is a high-side driver and could maybe replace your 7x PNP transistors.

....