# Transistors: Switching a higher voltage at the source (not the drain) side

TL;DR: I want to use a lower voltage (5V) to switch current from a higher (12V) voltage source at the source end instead of the drain end.

Longer story: I'm trying to control some large seven-segment displays with an Arduino by multiplexing across the digits. This presents a few design considerations:

1. Vf on the segments is 8V-10V (because each segment is actually 5 LEDs in series), so I'm going to drive them with 12V.
2. The displays are common-anode, so control of the segments happens at the cathode/drain, but control of the digits happens at the anode/source
3. The multiplexing will be such that all segments of an individual digit will be lit at once, and then we will switch to another digit. So, we have to allow for multiple drains to be open at once, but not for multiple sources.

There are many other posts asking for controlling higher voltages with lower, but the ones that I found all advise to put the load in the collector of a BJT. Indeed, this is what I've done at the drain side, to control the segments, but I also need to control the supply to the common anode of each digit.

The simplest way I've found is to use a PNP/NPN pair (Q1_1 and Q1_2 control digit 1, Q2_1 and Q2_2 control digit 2), but this seems like overkill. I feel like this can be done with only one transistor per anode (but maybe with more total components... resistors, capacitors, etc).

Here are the questions I have about this circuit (note: I only included 3 LED's per digit, for simplicity):

1. Primary question: Is this PNP/NPN pairing a sensible way of doing it, or is there a more-standard way?
2. Secondary question: Note that both of the transistor pairs share the same emitter resistor (since only one is enabled at any one time). I suspect that this prevents the NPN from getting to saturation since that resistor would pull the NPN's emitter voltage up above 5V. My solution for this would be to move the resistor to be between the PNP's base and NPN's collector, but this would require one resistor per digit (which isn't a big deal here, but, for a larger project, it could be, and I'm curious if there's a way to get away with just a common resistor). Is is just a matter of setting that resistor to a lower value so that the PNP can, at least, saturate?

• Source and drain are terminals on MOSFETs, but then you start talking about BJTs and your schematic shows BJTs. Can you clarify if you are working with BJTs or MOSFETs? Nov 22 '19 at 22:15
• I think you are looking for a "high-side" drive method but it's a bit unclear what exactly it is you need, largely because you keep throwing around the terms source, drain, and collector in describing things in an unconventional way. Nov 22 '19 at 22:23
• Here's a tip: It doesn't make much sense to say a drain is open but a source is not since it implies that current can flow through one terminal without flowing through the other. It's also confusing because you have transistors at both the anode and cathode so when you say source or drain side, I don't know which side you are talking about. Just stick to anode and cathode side. Nov 22 '19 at 22:25
• That should work, and you don't need the NPN to saturate -- it just needs to pull sufficient current from the PNP base so that it saturates. Nov 22 '19 at 22:27
• @DKNguyen Apologies for the use of "source" and "drain". I forgot that, in addition to their everyday meaning, they also refer to MOSFET terminals. The notion I was going after is, perhaps, a grid of LED's in rows/columns. The 12V is supplied to various rows and various columns are connected to ground. I think of the 12V being connected via "source-side switches" and the columns going to ground via "drain-side switches". One of these switches (to a row, say) can be allowing current, while a column switch isn't and the LED at that row/column wouldn't be lit. Nov 23 '19 at 0:50

Is this PNP/NPN pairing a sensible way of doing it

Yes.

Note that both of the transistor pairs share the same emitter resistor (since only one is enabled at any one time). I suspect that this prevents the NPN from getting to saturation since that resistor would pull the NPN's emitter voltage up above 5V.

Correct

My solution for this...

No 'solution' is necessary, because it isn't a problem.

Is is just a matter of setting that resistor to a lower value so that the PNP can, at least, saturate?

If 4.4mA isn't enough to put the PNP transistor into saturation then a lower resistor value will be necessary.

You can simply use an open-collector (or open-drain) TTL/CMOS gate IC then use discrete P-Mos transistors on each digit channel. You would then use another set of OC drivers to drive the cathode lines grouped by segments. A bit more compact than a full discrete solution. See below.

A full IC option would be to use high-side driver chips similar to TBD62783. If you look at that chip's equivalent circuit it is similar to the circuit below.

simulate this circuit – Schematic created using CircuitLab