Large digital clock project: LED wiring, and more

I want to make a big six digit, seven segment per digit, clock for my living room, with segments cut from 10mm non-transparent acrylic. The long vertical segments will be ~30x100mm with four LEDs, the short horisontal segments ~80x30mm with three LEDs, which should give close to equal brightness.

LED datasheet: http://www.cree.com/products/pdf/LEDlamps/CP41B-WES&WGS.pdf

For driving the LEDs I plan on using TLC5940s (http://www.ti.com/lit/ds/slvs515c/slvs515c.pdf), one per two digits, and I’ll control them with an Arduino (there’s already a library for the TLC5940). TLC5940s may seem like overkill, but I’d like to avoid too sudden changes in brightness (by crossfading), and I’d like to be able to turn down the brightness at night.

So far so good (I hope :)) - but what’s the best way to wire the LEDs given that the segments have different numbers of LEDs?

The LED forward voltage is ~3.6V, forward current ~30mA, so if I wire them in series I’ll have 14.4V (4 x 3.6), 30mA on the long segments and 10.8V (3 x 3.6), 30mA on the short segments. In parallel that would be 3.6V, 120mA (4 x 30) on the long segments and 3.6V, 90mA (3 x 30) on the short segments.

Also, I’d prefer to use a single power supply for the LEDs. Either a LS50 3.3V 10A or a LS50 15V 3.4A supply: http://us.tdk-lambda.com/lp/ftp/Specs/ls.pdf, I figure.

The TLC5940 has 6-bit dot correction, does that mean I can wire the LEDs in series, use a 15V supply, and set the current individually for the long and short segments?

Any help, suggestions, corrections etc. much appreciated!

EDIT:
The image attached is not the current version I think, it has more LEDs (the circles) than described in this post.

  • Ernst Hot

megaclock.jpg

The current is the same for any number of LEDs when the LEDs are wired in series.

Chagrin:
I believe I understand that, but if I supply 3 LEDs (Vforward: 3 x 3.6V = 10.8V) with 15V, shouldn't I limit the current so they won't burn out?

To clarify, my problem is there are two segment types; vertical with four LEDs and horizontal with three LEDs per segment. So my understanding is, either they need different voltages or different current limiting in order to have equal brightness and not burn out.

If you plan to use TLC5940, which is current source driver, it doesn't matter how many leds connected in string or no led at all, just apply appropriate voltage (15 in your case, higher than necessary for longest string)

If you get allways the same voltage from the TLC5940, you will need to use different resistors in series with each module to limit the current and get an equal level of brightness.

There is something I don't understand from the TLC5940 datasheet: are the 120mA max current per channel or for the whole IC?

I've done a similar project with a display that is 30x100cm using this modules bought here: http://www.casadelled.com.ar/. In my design I used shift registers (74HC595) and UNL2003, no multiplexing at all. And I can tell you, it is a big cable mess, but it was easy to get it working (it was actually my first project). My solution doesn't have the PWM feature, but I guess it is something you can easily achieve with a power MOSFET transistor in the common annode.

pgmartin:
There is something I don't understand from the TLC5940 datasheet: are the 120mA max current per channel or for the whole IC?

My understanding is that it's 120mA per channel (if Vcc > 3.6V).

pgmartin:
If you get allways the same voltage from the TLC5940, you will need to use different resistors in series with each module to limit the current and get an equal level of brightness.

Hmm, I don't think that's necessary. My understanding is that the TLC5940 has two ways to control the current, a resistor on Iref that sets the overall maximum current for all channels and 6 bit dot correction per channel.

So I'd set the maximum current for the string with the largest number of LEDs with the resistor on Iref and limit the current to the string with the least number of LEDs using dot correction.

Of course, I could be entirely wrong about this :wink:

So I'd set the maximum current for the string with the largest number of LEDs with the resistor on Iref and limit the current to the string with the least number of LEDs using dot correction.

Looking at figure 5 in datasheet (output current vs output voltage) I don't think dot correction would be required. Luminance error individual led is higher, than non-linearity output of IC.
It's not the case for max7219/7221 though.