Driving a large number of LEDs with ULN2803A

The original question about single outputs has been answered, so I'm moving on to focus on this problem.

I've done at least some looking for transistor arrays that come in eights and have common emitters, and so far the only real results that have turned up are the CA3251, which is apparently way out of production, and the ULN2803A Darlington array. Using an array with common emitters would simplify things, as would having built-in base resistors, and the ULN2803A is a go on both.

The objective is to map each of eight outputs on a 74HC chip or PIC to the light of ten high-brightness LEDs, Vf of 3.2~3.6V, at 15~20mA. (In the case of using ULN2803A I would use two of them, driving 5 LEDs at each output.)

My original idea was to have the transistors sink the cathodes directly:

+5V o------------| 1/8 ULN2803A (oversimplified) |\\>---|GND

Then I found out that I have no real information regarding what the collector-emitter voltage would be at any given moment, but that the data sheet suggests one possible value is 2V, which is too little margin for me to work with.

The next idea was to run the Darlington as an inverter, inverting the inputs accordingly (probably at the software level if applicable).

+5V |--+-|GND | | +--/\\/--->|--+ | | +--/\\/--->|--+ | | . . . | | +--/\\/--->|--+ |/

------->o---------------| |\\>---|GND

Is this alternative a reasonable design? Should I be looking at another transistor array (-like device) instead?

Thanks PSM

Reply to
Peter S. May
Loading thread data ...

Ok, but if you have something higher than 5V available, it would make things simpler since you'd be able to put the LEDs in series with less resistance.

Actually, Vcc should be less than about 1V. With your current requirements, it's probably only going to be about .7V, maybe even less if you don't parallel all the LEDs.

This would be quite wasteful of energy since turning the LEDs off would still flow allot (relatively) of current. If you could manage a 12V or 24V supply for the LEDs, life would be allot easier. ;-)

If you run 10 parallel LEDs @ 20mA off each output, you will be flowing

250mA thru each output driver. If you had enough voltage to put 10 LEDs in series, you would only need to flow 20mA thru each output. This would reduce the power dissipation of the package by a full order of magnitude. Taking the worst case scenario of a 1.6V Vce (from the datasheet) multiplied by 4A (all 8 channels on flowing 250mA each), youd be looking at over 6W of power dissipation. Your ULN2803 will be roasting. See if you can't scrounge up some more voltage for the LEDs so you can put your power supply to work making light instead of heat.
Reply to
Anthony Fremont


Reply to
Anthony Fremont

First of all, I appreciate the vim-formatted correction. :-)

Secondly, all right, at another location in this thread I found that increasing the voltage would simplify things a tad. I don't have any experience with DC-DC converters, but it's something I could learn. It just happens that the power supply I'll be using has a 12V tap, but that's still too little to be of much use.

So, what if I were to do something like this:

+15V |-->|-->|---/\/\--+--< (collector) | | +-->|-->|-->|---/\/\--+ | | +-->|-->|-->|---/\/\--+

If I'm running the LEDs at 20mA, would the above circuit only be pulling

60mA? That would certainly drop Vce to a more convenient level...

It even seems possible to do something like

+38V |->|->|->|->|->|->|->|->|->|---/\/\--< (collector)

And only draw 20mA, period. The big question, then: Would a DC-DC converter overcomplicate the thing? So, I guess that's what I figure out next.

Thanks PSM

Reply to
Peter S. May

I would have used FRED syntax but, hard as it may be to believe, there is likely noone here that has ever even heard of the "FRiendly EDitor" or GCOS for the matter.

Might be of more use than you suspect.

Yep. :-)

Exactly. The total power disspated by the LEDs themselves will still be the same, but the power wasted in dropping resistors would be less.

That's up to you to decide. You can certainly build your own voltage booster with very few components. You can use a regulated switcher IC, or use the TV design approach and tweak the whole system so that it just happens to supply the right amount of voltage/current for the LED string, and pray that nothing changes (like an LED going short circuit). You could even use the the PIC to PWM an inductor (using a MOSFET of course) and use the built in ADC to track the generated voltage. You could use a simple resistive divider to reduce the 38V being generated to something in the range of 0 to 5V. Or you could use the ADC in the PIC to measure the voltage accross your series resistor and adjust your duty cycle accordingly. Or you could skip the PIC and use a comparator to turn the PWM on and off. Or you could........... ;-)

Reply to
Anthony Fremont


According to the data sheet I found,

formatting link

VCEsat max is 1.1v. at 100 mA, and you're only asking for 15 to 20 mA from each section, so I'd say don't worry about it. You could run up to 5 of these 20 mA LEDs (and their resistors) for 100 mA from one output, and have a Vcesat of 1.1V.

Good Luck! Rich

Reply to
Rich Grise

"Rich Grise= Wanking Cretin "

** Read the first post in this thread - IDIOT.

The idiot OP now wants to run 5 LEDS off each output.

He originally wanted to run 10.

Be anyone's guess what the manic moron decides next.

....... Phil

Reply to
Phil Allison

The OP wants to light 8 "channels" of 10 LEDs each and that hasn't changed. Please try to keep up.

I'm guessing that the "manic moron" will change the subject line to something offensive, and then start repeating himself as usual.

Reply to
Anthony Fremont

With logic like that, I'd love to see some code that you've written. I can only surmise that it would remind me of some post-impressionist van Gogh.

At any rate, I must congratulate you on the quick response. Only 7 minutes, I doubt the local fire department could do better. Thanks for being so attentive. HAND. :-)

Reply to
Anthony Fremont

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.