Using PNP Transistors on a 7 segment display. am I doing it right?

I want to drive the Cathode of a four digit seven segment display (common cathode) using 4 PNP transistors.
Racing SM TRAN.jpg
I would appreciate any comments telling me if my schematic is correct or not specially regarding the four transistors.

Thank you in advance for any input.

Andrés Rodríguez
 

westaust55

Moderator
Is the need for the transistors due to larger size displays similar to the approach shown on page 12 of the MAX7219 datasheet (where FETs are shown)?
 
Yes, the display is large and the segments are made with LED strips. In a previous version I used a ULN2803 to drive the digits (see schematic). In this one I am trying to reduce the size of the PCB using 4 transistors instead of the 18 Pin IC Darlington array.
ExpressSCH.jpg
 
Last edited:

darb1972

Senior Member
Hello Marmitas

No, I don't think you have this part right. What transistors are you using? You need to limit the based current on BJTs. Where does via "3" go to for each transistor? Ground? What current limiting do you have for the collector/emitter path? Is there some of the schematic missing?

I haven't looked at the spec sheet for the MAX7219 (as yet) so I dont know if it has internal current limiting when driving cathodes. If so then is might protect the base of your transistors, but what about current limiting for the collector/emitter?

It would be good to know more about the display (a spec sheet preferably) as this will determine if you need transistors, what type (and what current) and then if so, how we can calculate the necessary base current to drive them properly (into saturation so they act like a switch/driver).

What's wrong with using a ULN2803 in an smd package to save space? Done properly with a double sided pcb you should be able to keep things very compact. I think individual discrete transistors will take up far more space (unless you go smd maybe).

Regards
Brad
 

MartinM57

Moderator
...In a previous version I used a ULN2803 to drive the digits (see schematic)....
Intrigued. Did this actually work? The 7219 Dx pins are current sinks to light a digit and open circuit to turn off a digit - adding a ULN2803 (with pullup resistors) inverts the sense of this which means that all but the required digit is lit, which with the 7219 multiplexing probably gives "all 8's"?

It seems you are doing the same as http://embedded-lab.com/blog/high-voltage-seven-segment-led-display-driver-with-spi-interface/ where he puts an inverter before the 2803 which, IMHO (plus some pull up resistors between the 7219 and the inverter), is what is needed.

Anyway, your "LED string segments" are probably passing only the same current as a normal 7 segment display segment (say 20mA?) - it's just that they need a higher overall voltage on the anodes to overcome the individual LED Vf's that are in series
...so with the current the same, why do you even need to modify the DIGx 7219 outputs - they are specced to sink 40mA each?
...I would say the same to the author of that web page also, even though he seems to offer some justification in his text description

(and no, your PNP transistors will/should not work as you have drawn them - I don't think they can be made that simply to be higher power current sinks that turn on when the 7219 current sinks turn on)
 

AllyCat

Senior Member
Hi,

One of the (main) features of a MAX7219 is that it drives the LED segments via (adjustable) constant current sources, so it seems a little "strange" to not use that feature. But I guess it has other features that are useful to you.

To answer your question, yes that arrangement of PNPs (as "emitter followers") should work alright provided that the LED supply rail is similar to (not much more) than the MAX7219 supply rail, and the LEDs have series resistors (to limit the current), either in series with, or built into, the LED strip. Also, R13 - R16 are unnecessary because the MAX7219 pulls up the cathode driver pins with 2 mA anyway.

But what are the PNPs supposed to achieve (or more specifically, how are the segments driven)? The maximum segment drive (source) current appears to be 40 mA (typical) and the digit drivers can sink 320 ma (i.e. 8 segments), which seem comparable figures. If anything, for 4 digits, it appears that it is the LED anode drivers that would be the limiting factor.

Cheers, Alan.

EDIT: Ah, I now see that you are driving the LEDs from 12 volts, so NO it will NOT work.
 
Last edited:

Goeytex

Senior Member
Q1 will not and cannot switch 12 Volts to "K". It will only drive as high as the base voltage (5V) minus .7V or about 4.2 Volts. You will need 2 transistors here an NPN and a PNP. The basic circuit can be found in ===> This Thread

Others have pointed out the flaws in using the PNP transistors as you have drawn them.

Seems to me that after adding the transistors and associated resistors you will have used up as much space as you are trying to save.
 
Intrigued. Did this actually work?
Yes, it worked when I used a UDN Darlington array to drive the digits with the circuit shown below
ExpressSCH.jpg finished-project.jpg
In that case it was 3 digits.
But on my current project is 4digits and I have a space restriction on the PCB. That is why I thought about using 4 transistors instead of an 18 pin IC.
 
Thankyou everyone
For keeping me from messing up with the transistors.
I found a surface mounted Darlington array that will do the job and save space.
 

BESQUEUT

Senior Member
Thankyou everyone
For keeping me from messing up with the transistors.
I found a surface mounted Darlington array that will do the job and save space.
Next time, you can use APA102 ==> no driver needed ==> no space for driver, only 2 Picaxe pins needed...
 

AllyCat

Senior Member
Hi,

I found a surface mounted Darlington array that will do the job and save space.
But does your "Darlington array" have the additional internal inversion stage (as does the 2981) that is required to drive the Cathodes with the correct signal phase? Like Martin and Goey, I can't see how a normal "Darlington" could drive the Cathodes correctly, because it would invert the voltage polarity from the MAX7219.

Cheers, Alan.
 
Top