0
\$\begingroup\$

I would like to confirm something I have inferred through my looking into LED wiring and also have a couple questions answered. For the sake of the examples below assume the source voltage is 5v; my LED's drop 3.2v and want 20mA.

I am going to be wiring some LED's in parallel to a pin on a TLC5940. The TLC is a constant current driver. If each LED wants 20mA and I'm going to wire 6 LED then I would set the TLC to have a constant current of 120mA.

I suspect that I also need to wire a resistor in series with each LED because LED's "effectively have no resistance" so to make sure the current balances evenly I need to throw a resistor in each parallel string. Is that correct?

A couple other questions; I'm still new to electronics so I think I still don't fully understand a couple basic concepts.

If I throw a resistor in series with each LED do I need to make the TLC draw more current to balance out the resistors; or do I just make sure that the resistor is smaller than 90ohms i.e. (5v - 3.2v) / .02A?

I set up a test where I had an Arduino board controlling the TLC chip and only one LED to a pin with the chip set to 20mA. The Arduino 5v pin was powering bot the TLC chip and the LED. The thing is my LED only wants 3.2v so there were 1.8v left over. So was my LED being over-driven with voltage, does that not matter so long as the current is correct, or does the TLC chip automatically sink any excess voltage while it does it's current limiting?

\$\endgroup\$
  • \$\begingroup\$ Your first question is pretty much a duplicate of this one. \$\endgroup\$ – PetPaulsen Oct 3 '12 at 19:26
  • \$\begingroup\$ I saw that one but I'm not sure I fully understood the answers which is one of the items that lead me to ask this confirming question. I think they are saying I want to put an extra resistor in but Some Hardware Guy's answer below seems to contradict that. \$\endgroup\$ – William Oct 3 '12 at 19:35
  • 2
    \$\begingroup\$ You use separate resistors to balance all of the LEDs. If you use one, there's no guarantee that all of the LEDs will get 20mA. Consider the case where you set the TLC to output 120mA, but one of the LEDs burns out (open circuit). Now you have 120mA forced through 5 LEDs, which is more than you'd like. \$\endgroup\$ – Shamtam Oct 3 '12 at 19:44
  • \$\begingroup\$ Deleted my answer :) @Shamtam makes a better point above that using a single runs the risk of burning out all your LEDs if one fails. To answer your question from before if you used a single I wouldn't expect it to balance exactly but I don't think the currents would be wildly different if you're using all the same LEDs. I'd think the current would vary with variation in process for the LED (different Vfw). Maybe someone knows more about that than I do? \$\endgroup\$ – Some Hardware Guy Oct 3 '12 at 20:29
  • \$\begingroup\$ The currents might not be wildly different, but it doesn't necessarily take a big current change to cause noticeable differences in brightness. Couple that with the failure case described above, and the need for a resistor on each LED shines through \$\endgroup\$ – Scott Seidman Oct 3 '12 at 22:16
3
\$\begingroup\$

You don't need the series resistors to control the current; the TLC5940 is a current source, and doesn't give a damn about the resistance. If you program it to source 120 mA it will source 120 mA, whether the series resistor is 0 Ω or 15 Ω (15 Ω is the equivalent of six 90 Ω resistors in parallel). Your calculation of the 90 Ω is correct: 3.2 V for the LED plus 20 mA \$\times\$ 90 Ω = 5 V, so a larger resistor would need a higher voltage to keep 20 mA flowing. If the 5 V is all you have increasing the resistance will decrease the current. A 100 Ω resistor for instance will allow

\$ \dfrac{5 V - 3.2 V}{100 \Omega} = 18 mA \$

Further increasing the resistance will also further decrease the current.

There are two reasons why you should use series resistors:

  • balance the currents between the LEDs. Small differences in LED voltage will be compensated by the voltage drop across the resistors. Since the resistors will all see the same voltage from the TLC5940 a 90 mV higher voltage for LED 1 will cause 90 mV less for its series resistor, and hence a 90 mV / 90 Ω = 1 mA less current, which won't be noticeable
  • but more importantly, they reduce the power dissipation in the TLC5940. If it supplies 120 mA per output, and you wouldn't have series resistors, then it would dissipate (5 V - 3.2 V) \$\times\$ 120 mA = 220 mW. Not too much it seems, but the TLC5940 has 16 outputs, then that 220 mW may become 3.5 W!! That's too much for the poor device (see power rating on page 3 of the datasheet, at 70 °C, not at 25 °C). So the resistors literally take some of that power out of the device. At 90 Ω there would not be any dissipation in the IC at all, but the current source wouldn't have any headroom either. So it's better to choose the resistance a bit lower: 68 Ω will leave 5 V - (3.2 V + 20 mA \$\times\$ 68 Ω) = 440 mV for the IC. 16 outputs driving 120 mA each will then cause an acceptable 850 mW dissipation.
\$\endgroup\$
  • \$\begingroup\$ +1 for the second reason. You could add that the 2.65W difference is distributed over 96 resistors, so each one only gets 30mW. \$\endgroup\$ – Federico Russo Oct 4 '12 at 10:36
  • \$\begingroup\$ Thank you for the answer. It definitely cleared up a couple things. Unfortunately I have a couple new questions lol. I think I just need to find someone I can talk to I feel like my limited electronics knowledge is getting in my way. \$\endgroup\$ – William Oct 4 '12 at 16:39
0
\$\begingroup\$

In answer to your second question, you want the TLC to sink the total current that you want shared across LEDs. Resistors create a voltage drop as a function of current per Ohm's law, but don't "consume" current themselves.

You'll want a resistor in series with each LED that is 90 ohms or less (you've got the math right). Ignoring the small voltage drop across the switch in the TLC5940, a 90 ohm resistor in series with each LED will prevent you from pushing more than 20mA per LED, even if one LED goes open-circuit for some reason. Think of it this way: There's no way that the output of the TLC5940 can go higher than the 5V supply voltage, even if you command it to deliver 300mA. It will sink as much as it can subject to the constraints of the supply voltage and the load you have connected.

[EDIT] I misread the datasheet initially, and was under the impression that the constant current source was PWM. On closer inspection, the constant current outputs are linear region BJTs, so the power dissipation will be the constant current times the voltage drop across the current source.

\$\endgroup\$
  • \$\begingroup\$ I see. Thank you very much. This answers everything I needed to know. \$\endgroup\$ – William Oct 4 '12 at 3:50
  • \$\begingroup\$ Question though. What do you mean by "Waste less power in the resistor"? Resistors don't actually consume/use energy correct? They prevent the travel of energy I thought. \$\endgroup\$ – William Oct 4 '12 at 5:17
  • \$\begingroup\$ @William Resistors do consume energy and waste power. A famous power formula is R*I^2, where R is the resistance. Also I'll have to disagree with DeanB here. The best practice when using a resistor to limit current is to always pick the resistor with slightly higher resistance than needed in order not to shorten the LED's lifetime. \$\endgroup\$ – AndrejaKo Oct 4 '12 at 6:23
  • \$\begingroup\$ Wasting less power in the resistors doesn't help. It will be in the 5940 instead. The 1.8V x 120mA is a given and has to go somewhere. \$\endgroup\$ – Federico Russo Oct 4 '12 at 10:39
  • \$\begingroup\$ @Federico, you are correct. In skimming the datasheet, I took the PWM brightness control to describe the current sink, but on closer inspection, the constant current source is indeed a linear region BJT. I've edited my response to clarify. \$\endgroup\$ – HikeOnPast Oct 4 '12 at 21:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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