Go Down

Topic: LED bar driver (Read 5457 times) previous topic - next topic


Gonn have to explain the multiplexing going on there if you don't mind.
Designing & building electrical circuits for over 25 years.  Screw Shield for Mega/Due/Uno,  Bobuino with ATMega1284P, & other '328P & '1284P creations & offerings at  my website.


...and with max7219/21


Aug 11, 2014, 10:33 pm Last Edit: Aug 11, 2014, 10:54 pm by PaulRB Reason: 1

Gonn have to explain the multiplexing going on there if you don't mind.

Charlieplexing  ;)

I'm not seriously suggesting Andy chooses that design. With that many LEDs, max7219/21 would be easier. But I just wanted to show its possible.

The LEDs are organised into 7 groups of 6 (except that last group that has only 4). Each group's common anode is energised when one of the 7 Arduino outputs is set to OUTPUT/HIGH, switching on the NPN (which is wired as an emitter-follower so needs no base resistor). The cathodes of the group are wired to the other 6 Arduino outputs (via current limiting resistor). If these other 6 outputs are OUTPUT/LOW, the LED lights up. If they are INPUT, the LED does not light.

Multiplexing is achieved by setting each of the 7 Arduino outputs to OUTPUT/HIGH in turn for a short period, in each case having set up the other 6 as either OUTPUT/LOW or INPUT. Hence 1:7 multiplex ratio.


Andy, if you go with your original plan of using a max7219/21, you could replace the Arduino with an attiny85!


Thanks guys
Starting work on the code, pcb and display surround.
I will update as i progress.


Go Up