Automate dimming of LED grid

B

Thread Starter

billybob

What language is best for this kind of thing? also would i need separate i/o for each LED? If so what would you recommend for 1,000 LEDs (in grid_format)?
 
R

Robert Scott

I would recommend using a long cascade of serial to parallel shift registers with parallel transfer capability (so that the contents of the shift register will no affect the parallel output until the parallel transfer command has been given). There are a number of chips that do this, for example the Micrel MIC5821. As far as dimming goes, you can use PWM in the common power feed.

Robert Scott
Real-Time Specialties
Embedded Systems Consulting

 
Lower level languages are probably best: Assembler, C, languages that are comfortable bit-banging the hardware.

if you have 1,000 LEDs, typically you would "scan" them. put them in, say, 100 rows of 10 led's. Then you supply power to the plus legs of the LEDs 1 row at a time, and supply the other leg with a selectable ground. In other words, the positive legs in a row are common, and the negative legs go to the associated grounding driver/transistor/whatever.

The LED's in the selected row with their grounds "turned on" will illuminate.

You probably want to cycle the whole grid at at least 20Hz (50Ms) which would give you about 500 microseconds per row. If you vary the amount of "on" time in that window you will be doing PWM (pulse width modulation) and you will achieve a dimming effect.

Googling for "led matrix" yielded this, among others:

_http://www.acm.uiuc.edu/sigarch/tutorials/ledarray/_ (http://www.acm.uiuc.edu/sigarch/tutorials/ledarray/)

further, "led matrix" and "scanning" yielded:

_http://engineering.dartmouth.edu/~engs031/hansen/demos/Agilent-LEDmatrices.pd f_ (http://engineering.dartmouth.edu/~engs031/hansen/demos/Agilent-LEDmatrices.pdf)

Which will probably be more than you wanted to know!

Have fun!

Rufus
 
Top