Pages: 1 [2] 3   Go Down
Author Topic: TLC5940 + high current  (Read 8037 times)
0 Members and 1 Guest are viewing this topic.
Manchester (England England)
Offline Offline
Brattain Member
*****
Karma: 509
Posts: 31462
Solder is electric glue
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
are suggesting adding decoupling capacitors?

That is one form yes, but also consider inductors and improving the layout.

http://www.thebox.myzen.co.uk/Tutorial/De-coupling.html
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 47
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I assumed since the LM317 delivers constant current and the outputs of the tlc5940 delivers constant current I would be safe, but I will try with a capacitor between power and ground on the powersupply today.

I just saw this post from a few days ago:
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1246438933/9#9

Basically it says "MUST have output caps with the LM317.

Their voltage fluctuates wildly without them."


hc
« Last Edit: July 10, 2009, 02:10:12 am by hcgilje » Logged

Manchester (England England)
Offline Offline
Brattain Member
*****
Karma: 509
Posts: 31462
Solder is electric glue
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
but I will try with a capacitor between power and ground on the powersupply today.

No not just one but a capacitor on every chip you use, actually on the chip plus a large capacitor across the supply. That is the absolute minimum, if you are switching large currents you might need more.

Quote
since the LM317 delivers constant current and the outputs of the tlc5940 delivers constant current I would be safe

No you are not, these devices only delver constant current on the macro scale not the micro scale. They need decoupling more than most to operate correctly.
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 47
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Adding the capacitors to the lm317 did the trick, I use  .1uF on the output voltage from each lm317, and also one across the power supply, but I guess I should increase this one to a larger capacitor.
So now I have 11 3w leds running from the tlc5940.

Thank you Grumpy_Mike!

hc
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 9
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi guys - I'm trying to design a circuit to use the TLC5940 chip to fade groups of common anode RGB LEDs.

My question is whether you can use P-channel JFets to switch on the 'low' side rather than the 'high side'
I will get to what I mean by high and low, but first this is how I want my design to work


They will be in groups of 6 common anode LEDs - arranged in parallel into 3 channels (RGB). that means 6 RGB LEDs, each with a common power source (anode) and using the TLC to fade the three channels of linked cathodes.


There will be 5 separate collections of 6 common anode leds (30 LEDs in total) - with each group being in its own discrete light box, connected and controlled with cat5 cable.

So what I'm getting at is that this isn't a matrix type of question, as for each channel on the TLC chip (i will use 15 or the 16 in total) I will control a separate channel of colour.

As obviously I can't really run the TLC to sink 6x20ma - so 120ma per channel - so some mosfets swithing is in order, from an alternative power supply part of the circuit that I have already designed with the proper capacitors, regulator chip set-up etc.


I know that I could use N channels to switch after the load of the LEDs - however, I would like the use the apparently simpler way by keeping the greyscale fading doing what it is ment to do, rather than always thinking in reverse and having problems turning them fully off.

My question is whether its possible to use P channel FETs on the low side - after load rather than before load, perhaps with a resistor on the drain to keep things going in the right direction. I'm attatching a schemetic diagram with some questions posted on it.

If you guys could tell me if my stuff is flawed etc or what I'd have to do to make it work properly (i.e. I have a pull-up vs pull-down question on the diagram aswell)

& yeah - please just point out if there are any problems or any of the logic behind it - as I can't find good definitive answers. I just want to know before I breadboard this part and start blowing TLC chips. Also resistor values would be handy if you have any ideas aswell





Cheers guys, I really appreciate the input and help that you guys provide (but go easy on me - I'm not experienced at all in either electronics or code)
Logged

Manchester (England England)
Offline Offline
Brattain Member
*****
Karma: 509
Posts: 31462
Solder is electric glue
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

That as drawn would not work.

Actually I would use N channel FETs and something like a 74LS04 to invert the logic signal from the TLC to the gate of the FET. You need a pull up on the TLC output and make sure you use a logic level FET that switches on with 5V.

You can parallel up the outputs of the TLC do a search for application note
SLVA280 Using TLC5940 With Higher LED Supply Voltages and
Series LEDs
and
SLVA253 LED Driver – Paralleled Outputs
Provide High-Current Outputs
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 9
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Yeah thanks mate, I was afraid somebody was going to tell me that,

Oh well - back to the drawing board.


Using 74LS04s or something similar and some n-channels then.

Is there a way to calculate value for pull ups though by the way?

Would 10k be the right amout? (only I seem to hear that value being given every now and then
Logged

Manchester (England England)
Offline Offline
Brattain Member
*****
Karma: 509
Posts: 31462
Solder is electric glue
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Is there a way to calculate value for pull ups though by the way?

Yes, it depends on what you are trying to drive.

The TLC5940 has a constant current supply so any resistor will be pulled down with this amount of current if possible with 5V across it maximum. If you are going into TTL you need to pull this down to less than 0.8V. So the voltage across the resistor needs to be 5 - 0.8V, therefore:-
R = 4.2 / I where I is the current setting of the TLC5940.
If this is set at 5mA then the resistor is 840R, if set at 20mA it is 210R
As you are not doing anything with this current it is best if it is as low as possible.
Logged

0
Offline Offline
Sr. Member
****
Karma: 0
Posts: 318
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
You can parallel up the outputs of the TLC do a search for application note
SLVA280 Using TLC5940 With Higher LED Supply Voltages and
Series LEDs
and
SLVA253 LED Driver [ch8211] Paralleled Outputs
Provide High-Current Outputs

What's the possibility for combining these two techniques, i.e. driving several high-current LEDs?

Let's say I have LEDs with 3.5V forward voltage and ~500mA current (Luxeon Rebels, Cree XR-E, LEDs like that. . . ) If the TLC can do 120mA per pin, I understand from the second app note you posted that I could parallel 4 of the outputs to drive one of these LEDs, correct?

And, the second app note describes using a transistor on an output pin if you need higher voltages than the chip can handle (17v).

What if I wanted to drive a string of 6 of these LEDs, in series? Could I use an N-channel MOSFET on the 4 paralleled output pins?

If so, then one tlc plus 4 MOSFETs could drive 24 LEDs (6 leds per 4 pins). This would be a big deal, since within the next year I'm going to be trying to drive ~150 - 200 HB LEDs. Eight or ten TLC5940 chips, plus a handful of transistors, would be cheaper and simpler than what I had been planning.
Logged

Manchester (England England)
Offline Offline
Brattain Member
*****
Karma: 509
Posts: 31462
Solder is electric glue
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Could I use an N-channel MOSFET on the 4 paralleled output pins?

Yes that would work to get the current up with a higher supply voltage, but ....

OK on the 120mA per pin but look at the power dissipation of the overall chip, you are bound to fry it if you don't watch out.
Logged

0
Offline Offline
Sr. Member
****
Karma: 0
Posts: 318
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Mike, help me through this please! My knowledge is limited in this area.

From the datasheet, it looks like the 28-PDIP package has a max dissipation of about 2.4w at 25C.

Now, I if I want all 16 channels at 120mA, and the chip is running at 5V, then I can calculate the dissipation:

16 channels at 5v and 120mA is 16*5*.12 = 9.6 watts

But that doesn't seem right, does it? The chip isn't dissipating 9.6w - the whole circuit is, correct? How do you calculate dissipation of the chip?
Logged

Manchester (England England)
Offline Offline
Brattain Member
*****
Karma: 509
Posts: 31462
Solder is electric glue
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Page 13 of the data sheet has the full formula for the power calculations, but basically it is the voltage across something times the current through it. In this case the something is the driver outputs and when pulled down are a quite low voltage but not zero. Unfortunately I can't find this in the data sheet so you will have to just use the formula they give.

Have you seen my tutorial on power calculations:- http://www.thebox.myzen.co.uk/Tutorial/Power.html
You can plug the package thermal properties into that.
« Last Edit: September 23, 2009, 09:17:28 am by Grumpy_Mike » Logged

0
Offline Offline
Sr. Member
****
Karma: 0
Posts: 318
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok, thanks. It looks like my thought of basically having all 16 pins at 5v and 120mA is not possible.
Logged

0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 73
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I basically want to hook up 4 LEDs (20mA/LED) to each channel of 6 TLC5940s.  I also want to be able to make the LEDs go completely dark.  

I don't understand exactly what I need to do to keep from frying my TLC5940s (i.e. keeping the output voltage within spec. yada, yada, yada).

Would using Rocketgeek's P-channel MOSFET be the way to go for me (I'm hoping he answers)?  

If so, I could use some help picking the right size components for this setup (and understand why... I actually would like to learn, not just mooch) and a simple diagram would be MOST awesome, as wel!!

Thanks in advance for any responses.... they are greatly appreciated!

lq_bert
Logged

Seattle WA
Offline Offline
Full Member
***
Karma: 1
Posts: 208
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

lqbert: Got your message -- been distracted by life. I put the circuit described together in order to fade a bunch of common-cathode RGB LEDs. The first thing you should do is go read International Rectifier's excellent intro to power mosfets, AN-1084 Power MOSFET Basics (http://www.irf.com/technical-info/appnotes/an-1084.pdf). It covers entirely N-channel MOSFETs, but it's a good intro and P-channels are mostly the same with negative signs on most of the parameters. Then check out AN-940 (http://www.irf.com/technical-info/appnotes/an-940.pdf) for more on how to handle P-channel MOSFETs. The rest of this message is going to assume you've read them.

You want to select a mosfet with the minimum gate charge (Qg) that can handle the supply voltage with a decent safety factor. 80 mA is so laughably little current for a modern power MOSFET that you probably don't need to worry about that when making your selection.

Now, the easy way to drive the gate of the mosfet off is to connect it, through a protection resistor, to the sink pin of the TLC5940. That will turn the MOSFET on when then pin starts sinking. You then need a pull-up resistor between the gate and the power supply to turn the MOSFET off, as well.

Sizing the gate resistor is important because all of the pins of the TLC5940 turn on at the same time. Therefore, the turn-on current spike of all of the MOSFETs gets soaked up by the TLC5940 at once. Luckily, it's very short.

You want to size the pull-up such that it turns off the MOSFET quickly. However, making it smaller (in order to speed turnoff) has two significant negative consequences. One, it reduces the amount by which you can pull down the gate voltage, since it forms a voltage divider with the gate resistor. The farther you can pull that voltage down, the better the MOSFET conducts while on. Second, you're drawing current through the gate and pull-up resistors in series while that pin is on. As long as you can pull down at least five volts, you should be fine to turn it on.

Keep the on current in mind tho; you want to time-average that with the turn-on current in order to determine the average current through each channel. That will give you the input to the power dissipation equation.

Clear as mud?
Logged

Pages: 1 [2] 3   Go Up
Jump to: