Prev: TI MSP430
Next: Tricore: serial download of source code
From: Mark Borgerson on 6 Apr 2006 12:44 In article <IR9Zf.12763$kT4.6195(a)fed1read02>, rh86(a)no.spam says... > I'm looking for a driver chip to run several "high-current" (20-30mA) > LEDs from a single MCU. I've got enough MCU pins for a 1:1 solution, > but the current exceeds the MCU ratings for direct connection. > > There's no shortage of advertisements for LED driver chips like Maxim's > MAX6966, which could do the job (via SPI). I've got to think there's a > simple multi-channel transistor package for this purpose, but Digikey > searches on "buffer" or "driver" turn up too many hits to filter through. > > What generic part number should I be searching for (and how does one > find these generic numbers in the first place)? > > Also, is there any trick to driving blue & white LEDs, or just > additional current and higher forward voltage? > I have been using 74LPT245 chips from Pericom for LED driving and general IO usage. The '245 chips are octal buffers. These are tri-state chips, and sometimes it is handy to have control over all the outputs so that you don't get glitches at power-up or reset. If your driver inputs float because the microcontroller pins are inputs until your codes intializes them, you can get odd things happening at startup. This is may not be a problem with LEDs, but it has bitten me when controlling external power for other devices. If this is a problem, consider using pull-down resistors. The 74LVC2245 also works OK for this purpose. I suppose that you could also use an SOT-23 logic-level n-channel FET for each LED. This solution allows you to use an LED drive voltage higher than the microcontroller pin voltage limit. A lot of the LED or peripheral driver chips are basically multiple open-collector or open drain transistors in a single package. You can avoid startup glitches by using a simple NPN transistor driver instead of an FET. This requires a base current limiting resistor, but you don't get a glitch if the MCU pin floats, as the transistor responds to current, not voltage. Mark Borgerson
From: Spehro Pefhany on 6 Apr 2006 13:05 On Thu, 6 Apr 2006 09:44:34 -0700, the renowned Mark Borgerson <mborgerson.at.comcast.net> wrote: >You can avoid startup glitches by using a simple NPN transistor >driver instead of an FET. This requires a base current limiting >resistor, but you don't get a glitch if the MCU pin floats, as >the transistor responds to current, not voltage. Unless you are using one of those execrable pseudo-bidirectional ports, such as on some 8051 variants, that too-closely mimic the original. In such a case, two transistors and four resistors per LED might be required to allow the higher voltage positive supply and glitch-free operation. Best regards, Spehro Pefhany -- "it's the network..." "The Journey is the reward" speff(a)interlog.com Info for manufacturers: http://www.trexon.com Embedded software/hardware/analog Info for designers: http://www.speff.com
From: Jonathan Kirwan on 6 Apr 2006 13:10 On Thu, 06 Apr 2006 13:05:38 -0400, Spehro Pefhany <speffSNIP(a)interlogDOTyou.knowwhat> wrote: >On Thu, 6 Apr 2006 09:44:34 -0700, the renowned Mark Borgerson ><mborgerson.at.comcast.net> wrote: > >>You can avoid startup glitches by using a simple NPN transistor >>driver instead of an FET. This requires a base current limiting >>resistor, but you don't get a glitch if the MCU pin floats, as >>the transistor responds to current, not voltage. > >Unless you are using one of those execrable pseudo-bidirectional >ports, such as on some 8051 variants, that too-closely mimic the >original. In such a case, two transistors and four resistors per LED >might be required to allow the higher voltage positive supply and >glitch-free operation. I remember you saying that the 8051 port uses a strong pullup with a weak pullup and that the strong pullup is switched on briefly when the pin is driven high. But can you expand on this a little more? In the case of a higher V+ for the LED, how does the old 8051 port pin require two BJTs for glitch free operation, perhaps in the context of your earlier point about the pullups? Jon
From: Steve at fivetrees on 6 Apr 2006 13:17 "Ryan Weihl" <nixnam(a)noname.net> wrote in message news:e13ep9$jlk$1(a)emma.aioe.org... > Richard H. wrote: > >> I'm looking for a driver chip to run several "high-current" (20-30mA) >> LEDs from a single MCU. I've got enough MCU pins for a 1:1 solution, >> but the current exceeds the MCU ratings for direct connection. > > you can use a 74HC4094 shift reg to drive 8 led's with 1 ea > 470ohm resistor. > rw Careful. While the 74HC4094 can sink/source 25mA, the datasheet suggests a max total ICC of 50mA. In any case, be sure the total dissipation of the device (Iled * Vsat * 8) is within limits. Also a 470R resistor (assuming 5V) would give nowhere near the 20-30mA the OP is looking for. Summary: there are better ways. Steve http://www.fivetrees.com
From: Roberto Waltman on 6 Apr 2006 13:20
"Ryan Weihl" wrote: >Richard H. wrote: >> I'm looking for a driver chip to run several "high-current" (20-30mA) >> LEDs from a single MCU. I've got enough MCU pins for a 1:1 solution, >> but the current exceeds the MCU ratings for direct connection. >you can use a 74HC4094 shift reg to drive 8 led's with 1 ea >470ohm resistor. For "conventional" low current LED's yes, but the OP specified "High Current" LED's. Can the 74HC4094 drive 1/4 Amp? (8 x 30 mAmp). Also at 30 mAmp, a 470 ohm current limiting resistor would require a 15 Volt power supply. |