I want to put three multiplexed seven segment displays on a pcb module which then will be connected to another board through a 1x12 Pin header housing an ATMega (so assume in the following that Pin 11 is GND).

I created two circuit designs one using PNP transistors for multiplexing (as seen in most tutorials): PNP

and one with NPNs:


Wouldn't there be a benefit of using NPNs as we can avoid the 0.6V drop? How is the recommendation in this use case?

  • \$\begingroup\$ For common cathode (CC in your circuit diagram) displays you want to use NPN transistors. PNP is not really an option. \$\endgroup\$
    – jippie
    Apr 17, 2016 at 11:26
  • \$\begingroup\$ @jippie Why is PNP not an option? \$\endgroup\$
    – bodokaiser
    Apr 17, 2016 at 13:58

1 Answer 1


Either one will work.

There are two differences. With the PNP transistors, as you noted, you get a one-Vbe drop. This may or may not be significant, depending on your supply voltage and the type of LED display (blue or white LED displays will obviously be worse than red, green or yellow displays).

The NPN transistors avoid some of the drop (it will be more like 100mV with the transistors driven properly) but you will need to add a resistor in series with each base to control the base current. A suitable current (for most transistors) is the maximum collector current- with all segments on- divided by about 20.

The resistor is unnecessary for the emitter-follower PNP transistors- the base will just draw as much current as it requires, and usually the GPIO will provide enough resistance that the transistor won't decide to 'sing' at VHF frequencies.

  • \$\begingroup\$ do you have some more information why the NPN will take too much current? \$\endgroup\$
    – bodokaiser
    Apr 17, 2016 at 14:00
  • \$\begingroup\$ The base-emitter junction behaves like a forward-biased diode. If you connect a GPIO output to that it will definitely draw too much current. See datasheets for the GPIO and transistor you have in mind. \$\endgroup\$ Apr 17, 2016 at 15:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.