Electrical Engineering Stack Exchange is a question and answer site for electronics and electrical engineering professionals, students, and enthusiasts. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm doing something in where I need to multiplex 6 7-segment displays. About doing it, I found things like this:

enter image description here

And things in where the same thing is done without the transistors, just by connecting the cathodes directly to pins of the microcontroller. What's the difference? When should I need the transistors? Is it because the microcontroller couldn't handle current for all the LEDs?

I'm using an Arduino with an ATMEGA328, if that's needed for something.

share|improve this question
This doesn't answer your question but you might want to look at the MAX7219 chip to drive the LEDs. Check this tutorial for using it with the arduino. – Craig May 16 '13 at 16:27
up vote 4 down vote accepted

Many MCUs won't handle the current for seven segments unless a transistor is used. You might be OK with the AVR (40 mA maximum per output, IIRC), but you need to check it, and the total current.

share|improve this answer
Ok, thank you for the answer. – MyUserIsThis May 16 '13 at 17:03
While 40mA should be enough for a 7-segment display (maximum of 5mA per LED, set by the series resistors) only one digit will be on at a time with this multiplexed control. That means that the total 200mA chip max isn't a factor, but because each digit is only on 1/6 of the time (because you are multiplexing 6 digits) the effective brightness is reduced to 1/6 of what it would normally be at 5mA. – Kurt E. Clothier May 16 '13 at 21:05

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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