Friday, 31 May 2019

Best way to control 75 LEDs with Arduino


I need to control 25 groups of 3 LEDs or 25 RGB LEDs. Each group will be dismissed from the uC by up to 20 cm (about 8 inches). 20 cm is very safe assumption but I think it will be 10 cm or less.



However, I think If it be even 5 cm, it will be hard to create in matrix way, so I think using MAX7219 likie IC (http://www.arduino.cc/playground/Main/MAX72XXHardware) is not best idea.


I will probably use shift registers (http://www.arduino.cc/en/Tutorial/ShiftOut). I can connect multiple 74HC595 or use something like STP16C596.


I prefer STP16C596 but they are obsolete. I found SCT2026 (http://zefiryn.tme.pl/dok/a04/sct2026.pdf) but I'm not sure is It right choice.


One more note. My current project requires only "2 bit control" over each group (3 LEDs off, or selected and turned on only one of them), but I don't think it make my project easier or cheaper, also controlling each LED separately will give much more flexibility in case of changes.


What solution will be fit best for my requirements.


It will be nice if parts will be available in this shop - http://www.tme.eu/en/katalog/?&page=1,20#main or http://eu.mouser.com/ (but i prefer first one).



Answer



I would suggest going the matrix route with a driver like the MAX7219 you mentioned or maybe, if you wanted a lot more control, the TLC5951DAP, a TI LED driver meant for RGB leds that will give you 24 channels with a 12 bit resolution (4096 different steps of brightness for each channel). This will allow you to turn on each of the R, G, and B LEDs to different brightnesses to mix the colors to what you want.


You could use ribbon cable for the wiring to each of the LEDs (I'm assuming wiring is why you do not like the idea of the matrix) and have all of the cables plug into a controller board. For something like this, I would definitely recommend that you make a pcb for the controller because that's a lot of connections to try to do by hand. That's just what I would do though.


The STC2026 looks to be directly compatible with the STP16C596, so that's a perfectly good replacement if you want to use it. I would agree that controlling each LED individually will probably be cheaper and easier than trying to use some sort of MUX to have 2bits control which LED is on.



Hope that helps.


No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...