View Full Version : Creative solutions to a simple problem?
08-18-2005, 02:49 AM
16x 3v 350mA LED's
1 x Stamp Homework Board
2 x Darlington Array
Control any or all of the 16 led's in the matrix (see schematic below) by turning R1...4 high, and G1....4 to low.
Each of the LED's need 350mA to turn their brightest, since the STAMP can only allow for 20mA per channel, I need to integrate the Darlington array to switch a bigger power supply.
Unclear how to wire the darlington array since I think I need one to supply the 3v, 350mA positive to the LED's and another in the inverse to sink the ground (since the STAMP can only sink 25mA)....
Thanks for taking a moment to read this :)
08-18-2005, 03:08 AM
Hmm... interesting problem.· I think you're right.· I don't recall whether darlington arrays come in NPN and PNP, or if the term "darlington" implies NPN... but regardless, you'll need one of each type.· The PNP transistors can switch a line to Vdd whereas the NPN transistors are better suited to switching a line to Vss.
08-18-2005, 09:31 AM
any idea how to hook them up?
08-18-2005, 10:17 AM
I wish I can help you to a better degree answering your questions about the darlington array, but I cannot get Acrobat to work on my home machine and the nessesary data is in pdfs.
PNP darlingtons don't come in arrays that I am aware of (if so they are rare). You can use npn darlingtons for the high side as well as the low side, but I dont know if this is true for arrays or just individual darlingtons (need acrobat). You must be trying to drive some pretty hefty LEDs, the 1 watt luxeons take 350mA and they are blinding.
If I were to design the circuit, I would connect an array to the column lines and get 4 pnp darlingtons capable of handling 1.5A to drive the Row lines. Ill explain the reason for the bigger pnps in a bit. You're going to need to do multiplexing to drive all the LEDs, otherwise youd need 16 seperate darlingtons to drive all the LEDs. The circuit you've provided uses a total of 8, but requires multiplexing to drive the LEDs. To reduce flickering of the display, drive a single row high while pulling all the columns where an·LED is lit in that row down. Then the same is repeated for all rows, so for the pattern:
0123 <- Col
OXXO 0 <- Row
X is off
O is on
We would activate the pnp darlington for row 0, then drive the column 0 and column 3 npn darlingtons low. Then·do the same for each·Row, only·activating a single pnp darlington at a time. The goal is to do it so fast that it appears like its being lit all at once. So since all four LEDs on a row may be lit the same time, the pnp darlington has to handle 4 times the current·of an LED, or 1.05 A (get·slightly higher to have a margin of safety). Also move the resistors down to the columns to prevent fluctuations in LED brightness due to·a variable load resistance.
Ask for clarification or further detail where needed.
Post Edited (Paul Baker) : 8/18/2005 3:21:27 AM GMT
08-18-2005, 09:11 PM
Hmm... interesting problem.· I think you're right.· I don't recall whether darlington arrays come in NPN and PNP, or if the term "darlington" implies NPN... but regardless, you'll need one of each type.
All of the Darlington Arrays I have ever seen/used have been NPN.· However they do make PNP Darlington arrays, as I have seen them listed while looking for NPN.· Which one you need really depends on your application.
Parallax Tech Support
Beau Schwabe (Parallax)
08-18-2005, 10:02 PM
Have you thought about using "Half" of an H-Bridge for each line? Zetex makes some nice MOSFET and Bipolar high current options. For your example
you would only need four of them, they are surface mount (SM8), however the pitch is slightly different than normal ( 1.53mm) . I have used these in
the past and have been pleased with the results. ...any one of them on the link below would work.
Beau Schwabe (mailto:firstname.lastname@example.org)
IC Layout Engineer
08-19-2005, 02:58 AM
If your only concern is having control over all 16 LEDs, you wouldn't have to use an array. The array scheme requires 8 pins to control. You could use a couple of 8 channel shift registers back to back to give you 16 control outputs. Each output would have it's own darlington or power FET for each LED. I have seen at one time someone makes a shift register with drivers built in too.
08-19-2005, 03:51 AM
Lee is right, with a small (4x4) display its probably easiest to get a couple of shift registers like the 74HC595 to drive your two darlington arrays. In this configuration you would have a darlington for each LED and the cathode of each LED would be tied to Vdd, so no need for pnp darlingtons. This configuration would require·3 pins on the stamp to operate (SCK, RCK, SI).
08-19-2005, 04:41 AM
The chip Lee is referring to is a TPIC6595 -· combination shift register and Darlington array.· 250ma per channel, 750ma total current at any one time.
Do you have a Stamp Tester yet?
08-19-2005, 10:58 PM
Paul, can I just put the cathode of each led to the board's vdd and not worry about it sinking 350mA? So what parts would I need to make it work, do I still need the darlington arrays? How many registers would I need?
08-19-2005, 11:20 PM
·· Cathodes of LEDs are the ground/negative side of the LED.· Putting it to Vdd wouldn't be a good idea.· By tying the device directly to poewr supply rails, you lose the ability to control it, which I thought you wanted to do.
Parallax Tech Support
08-19-2005, 11:38 PM
Thats my fault, I said cathode when I should have said anode.
For each LED you want
-------------- | Shift Register |--- SI
| darlington |----|Q0 74HC595 |--- SCK
-------------- |____________________|--- RCK
where subsequent darlingtons are connected to Q1-Q7, if you haven't purchased darlingtons yet get the TPIC6595 which incorporates the darlington into the shift register. Connect the SO pin of the first 74hc595/tpic6595 to the SI pin of the second 74hc595/tpic6595.
And dont forget the current limiting resistor, also since all 8 darlingtons may be active simultaneously, check the max total current of the darlington to make sure your not overdrawing from the darlington, if so you can use two channels for each LED to cut the current drawn by half.
Post Edited (Paul Baker) : 8/19/2005 4:37:42 PM GMT
08-21-2005, 03:23 AM
Paul, how many shift registers do I need then to control 16 lights? How many outputs or drains do they have?
08-21-2005, 10:12 AM
The 595s have 8 bits so you'll need 2.
08-21-2005, 12:23 PM
At 350 mA a pop, the current limiting resistors will create some significant heat at even just a couple ohms. Try to supply the Luxeons at just above the forward voltage and use fractional ohm resistors.
The darlingtons will contribute some voltage drop but maybe some series diodes (or something else?) will be necessary.
What colors are you using? The blues, greens, and whites have a Vf of about 3.4V. The reds, oranges, and ambers have a Vf of about 2.1V.
08-31-2005, 03:53 AM
I dont know if anyone's still paying attention to this thead, but i'm working on practically the same project. I found an Allegro component: UDN2987A which is an array of logic and transistors that supplies your source. It's not exactly a pnp array, but it does the same thing. It has 8 transistors, so i'll be connecting them up as pairs to double their current capacity. And for the drain i'll be using the TI's npn darlington component: LM324ANE4 in the same configuration. Samples for both of these are available at their respective sites.
PS you cannot connect one of the terminals of the LED (anode or cathode) to a common terminal (VCC or ground respectively) if you are using the grid configuration. This will cause the whole row or column (depending on how you have it set up) to light up. An advantage of using this over the shift register idea is that PWM implementation to control the brightness will be easier once the hardware is connected properly. I'm implementing this on an FPGA, so i dont know what hte ramifications of this will be on your stamp processor.
I hope I have been of some help,