Question for the LED aficionados - Page 1
Forum section: electronics / projects

author: Howardlong
author_rank: Super Contributor
timestamp: May 09, 2016, 12:36:06 pm
content: I picked up set of reasonably large seven segment common anode Avago LED displays a few months ago, and I keep meaning to make a clock out of them. Each segment is rated at 20mA 9V (four leds in series on each segment).The clock bit is fine, that's a PIC24, it's the driving of the LEDs that I'm interested in. My intention was to multiplex them. My old school method was to use a bunch of appropriate discrete bipolar transistors or MOSFETs for driving both the common anode and the segments, or use some a transistor array. I have enough GPIO to do multiplexed segments and digit drivers, so are there any recommended transistor arrays for this? Do any offer programmable current or PWM for dimming for example? I could certainly achieve dimming by PWMing on the PIC if necessary.

author: Photon939
author_rank: Regular Contributor
timestamp: May 09, 2016, 02:49:46 pm
content: There are a bunch of options out there but the best bang for your buck I've found is the STP16CPC26 - it has 16 current regulated current sink outputs that can handle fairly high voltages. You can PWM the display with the output enable pin on the chip. The displays would not be multiplexed but you would also not need to refresh the display with your MCU leaving it free to do other tasks.You can drive two digits per chip and they cost around $1 each. TI makes some similar chips in a reasonable price range.

author: mariush
author_rank: Super Contributor
timestamp: May 09, 2016, 05:51:30 pm
content: You could do it with transistor array chips like ULN2003A (7 darlington transistors in chip, easy and cheap) and shift registers and mosfets or transistors to power each digit individuallyOr, you could do it with proper led drivers, see for example TLC6925 or TLC5926 which has a very detailed datasheet with examples and everything :5925 :http://uk.farnell.com/texas-instruments/tlc5925idbqr/ic-led-sink-driver-16ch-24ssop/dp/16944385926:http://uk.farnell.com/texas-instruments/tlc5926idbqr/led-driver-cc-16-ch-30mhz-ssop/dp/2492649It's a 16 channel driver and you can chain several together if you want or just treat them separately in your microcontroller code and they'll do everything you want.MM5450 is also quite interesting, 35 channels in a DIP-40 package:http://uk.farnell.com/microchip/mm5450yn/ic-led-display-driver-5450-dip/dp/2510523

author: bson
author_rank: Unknown
timestamp: May 09, 2016, 06:08:09 pm
content: How big are the digits? You could probably stick an SMD '595 behind each with individual output register controls but everything else common.BTW, why 9V? That seems like a really awkward LED voltage... See if they'll work at something a bit more sane.

author: bson
author_rank: Unknown
timestamp: May 09, 2016, 06:16:57 pm
content: Also, 20mA??? The cheapo ebay ultrabright 3mm LEDs I use for indicators are annoyingly bright at even 1mA. 200-500uA are reasonable currents for these... If they're actually LED modules, see if you can gut them and replace the LEDs. 7 segments times 4 digits at 20mA each...

author: void_error
author_rank: Frequent Contributor
timestamp: May 09, 2016, 06:23:25 pm
content: How many digits is your clock going to have?If it's only 4 then I pretty sure you can get away with the PIC24's PWM outputs (I think most of them have at least 4) with PWM steering or if you're multiplexing you might use the Peripheral Pin Select a lot of PICs have nowadays and just move the PWM output module to different pins. That way you could multiplex as many 7-segment displays as the number of pins your CCP/PWM output is relocatable to.In my opinion multiplexing would make PCB layout easier. Less hardware. Probably cheaper too. The only thing to worry about with multiplexing is to watch out for the peak segment current, at 20mA per LED 4 multiplexed displays will look like 4 non-multiplexed displays at 5mA but I suppose you already know this.Quote from: Howardlong on May 09, 2016, 12:36:06 pmI wanted to make a clock too. Years passed and still no clock

author: kolbep
author_rank: Frequent Contributor
timestamp: May 09, 2016, 07:56:16 pm
content: Hey, i built a big digit LED clock the other day:https://www.eevblog.com/forum/beginners/transistors-for-multiplexed-leds/msg635006/#msg635006

author: Howardlong
author_rank: Super Contributor
timestamp: May 09, 2016, 08:41:10 pm
content: Thanks for the answers thus far. I had spent a while looking for devices already, my intention was to mux them rather than do a ton of spaghetti wiring round the back, and I couldn't see much special in endriver dept that would specifically deal with a muxed display, other than just using transistor arrays.I remember using some ULN2xxx devices many years ago, I think the ones I used had shift registers and darlingtons for driving some relays. I may well still have some in stock... somewhere! They seem a bit of overkill for 20mA on the segments, but they'll save on wiring a bunch of discrete trannies.Are there arrays that deal with driving the high side of a common anode muxed setup as well as the low side? At the moment it seems to be pointing to discretes. I have used some integrated NPN/PNP devices in the past for high side switching, but they were single channel and still needed external resistors.These are the displays. They were on closeout, about a dollar a piece or something, so I bought their remaining stock of a dozen of so a few months ago.http://uk.farnell.com/broadcom-limited/hdsp-c2g1/led-display-56-8mm-green-ca/dp/1830051?ost=1830051&selectedCategoryId=&categoryNameResp=All%2BCategories&iscrfnonsku=falseThanks again for the responses.

author: dannyf
author_rank: Super Contributor
timestamp: May 09, 2016, 10:10:10 pm
content: "My intention was to multiplex them. My old school method was to use a bunch of appropriate discrete bipolar transistors or MOSFETs for driving both the common anode and the segments, or use some a transistor ar"Without seeing their specs it is hard to see if you need to use transistors to drive those LEDs.Also, one quick way to pwm those LEDs together is through shift registers output enable pins, if you are already using them.If not, you can use one pwm output pin to control brightness across multiple channels by shoring the output to ground through the pwm pin. Use diodes to isolate the channels from each other.

author: void_error
author_rank: Frequent Contributor
timestamp: May 09, 2016, 10:11:03 pm
content: Quote from: Howardlong on May 09, 2016, 08:41:10 pmThose are HUGE! Totally worth the ~$1 a piece.Checked thedatasheet, Peak Forward Current per segment is 80mA at 1/10 duty cycle, 0.1ms pulse width, farnell's datasheet is an old one I think and doesn't state that.I guess it's safe to say about 30-40mA per segment depending on the number of digits (4-6 I suppose...) wouldn't kill them with multiplexing.

author: Howardlong
author_rank: Super Contributor
timestamp: May 10, 2016, 04:39:07 am
content: Quote from: dannyf on May 09, 2016, 10:10:10 pmThanks, but I'm fine with all that, I'm just after recommendations and options for driver devices. You can get the specs from the post just before yours, here it is again:http://uk.farnell.com/broadcom-limited/hdsp-c2g1/led-display-56-8mm-green-ca/dp/1830051?ost=1830051&selectedCategoryId=&categoryNameResp=All%2BCategories&iscrfnonsku=falseAt the very least I need a means of driving the common anodes. That's why I stated they were 9V @ 20mA in my OP.

author: Howardlong
author_rank: Super Contributor
timestamp: May 14, 2016, 11:50:43 am
content: FWIW, This morning I set to and built my clock, the first one I've built since doing one out of about 20 TTL chips in the mid 70s. For the LEDs, I used ULN2803 for the segment drivers and TC4469 to mux the common anodes.PIC is a PIC24FV16KM202 on a 5V Microstick.The 32768Hz crystal still demands a bit of coaxing with the scope probe to start, but other than that pretty painless.Thanks for the suggestions.