Society of Robots - Robot Forum

Electronics => Electronics => Topic started by: d13 on April 16, 2008, 07:01:55 PM

Title: BCD to 7-Segment Driver Problem
Post by: d13 on April 16, 2008, 07:01:55 PM
Hi, I'm trying to hook up a common cathode 7-segment LED display with a (common cathode) BCD to 7-segment driver.

Heres how I connected everything:
driver VDD to +5V
driver VSS to ground
driver BCD wires to atmega8 I/O pins
driver active low latch enable pin to ground
driver output to respective 7-Segment anode pins
7-segment common cathode to a resistor then to ground

When I had it connected this way, the LED display was very dim and would change and flicker if I got near the signal wires from the mcu to the driver (literally, if I waved my hand over it).  If I touched the signal wires they seem to stablize a little more.  I also tried connecting the signal wires directly to +5V and ground with the same results.

Then I connected VDD to +15V.  The LED display got brighter, but I still had the same flicker/change problem.  Then I also connected the the signal wires to +15/Gnd.  It seemed to help with the flicker, but it still seems like it acts funny.

Probably the main problem is that driver datasheet, especially the "DC Characteristics" section, is very confusing to me.  Can someone please shed some like on the situation?  Thanks!!

Driver
http://www.nxp.com/acrobat_download/datasheets/HEF4511B_CNV_3.pdf

LED Display
http://www.avagotech.com/assets/downloadDocument.do?name=5988-5378EN.pdf
Title: Re: BCD to 7-Segment Driver Problem
Post by: kd5kfl on April 16, 2008, 07:12:02 PM
Quote
driver output to respective 7-Segment anode pins

See figure 14, bottom right, driver pdf.

Drive it through a buffer, not directly off the driver chip
Title: Re: BCD to 7-Segment Driver Problem
Post by: d13 on April 16, 2008, 07:41:57 PM
Quote
driver output to respective 7-Segment anode pins

See figure 14, bottom right, driver pdf.

Drive it through a buffer, not directly off the driver chip

Thanks, for the advice.  Although, I don't know how to apply fig 14 to my 7-segment LED display.  Can you please explain how figure 14 is more applicable than figure 9 (considering that fig 9 is what I'm trying to do)? 

Thanks.
Title: Re: BCD to 7-Segment Driver Problem
Post by: Asellith on April 16, 2008, 10:02:46 PM
Basically your not getting enough current thats where the buffer comes in. The driver isn't going to run the LED display. First with LEDs you can't just attach the signal wire to the the LED it needs to be current limited. That sound complicated but its easy. Just add a resistor. For lets say 5 volts DC. The data sheet for the LEDs is crap but kinda indicates they tested it at 10 mA so thats a good starting point. So Ohms law kicks in and 5 volts / .010 amps = 500 Ohms at 470 ohms is common enough so that will work. The driver data sheet is crap as well but it does say something about a max IOH of 25 mA. Not sure if this is for the entire chip or each output. A simple buffer chip will allow you to get the current you need without overloading your driver. Put the buffer input on the driver side. Add the resistor to the output side and then run that to the LEDs. This might take care of the flicker. The flicker might be caused by the driver chip being overloaded. Oh and IOH stands for Output High Current. That is the max current available from an output of high.
Title: Re: BCD to 7-Segment Driver Problem
Post by: d13 on April 16, 2008, 11:28:38 PM
Thanks for the info.  I was putting the resistor on the common cathod of the LED display (at least for testing).  I want to avoid adding the buffers if possible.  Do you happen to know of any LED drivers that will work directly in between the mcu and the LED display (built-in latches would be a plus) ?  I've been looking at some of the drivers at mouser.com, but I'm not entirely sure that I would know it when I see one.  :P

And just so I'm sure I'm clear how to add the buffers...  I would connect the mcu to the driver (with the driver VDD = +5 and VSS = GND), connect each output of the driver (i.e. abcdefg) to a buffer, and then connect the buffer to each LED anode.  Of course, the resistor would have to be somewhere directly before or after the LED.

Thanks again!!
Title: Re: BCD to 7-Segment Driver Problem
Post by: ALZ on April 17, 2008, 01:12:02 AM
Hi:

I hope you have this wired to a solderless breadboard so that you can play around with it. I see no need for the buffers. You do need the 7 resistors to the LED display.  You did not say what you did with pins LT & BI. You may be getting "flicker" because you left them floating?
You must tie them to the +V; best if you use a small ohm resistor to do this. Also you should use a capacitor arcoss the power leads of your chip.

Thanks for the info.  I was putting the resistor on the common cathod of the LED display (at least for testing).  I want to avoid adding the buffers if possible.  Do you happen to know of any LED drivers that will work directly in between the mcu and the LED display (built-in latches would be a plus) ?  I've been looking at some of the drivers at mouser.com, but I'm not entirely sure that I would know it when I see one.  :P

And just so I'm sure I'm clear how to add the buffers...  I would connect the mcu to the driver (with the driver VDD = +5 and VSS = GND), connect each output of the driver (i.e. abcdefg) to a buffer, and then connect the buffer to each LED anode.  Of course, the resistor would have to be somewhere directly before or after the LED.

Thanks again!!
Title: Re: BCD to 7-Segment Driver Problem
Post by: d13 on April 17, 2008, 02:39:12 PM
Thanks ALZ!  Connecting the LT and BI pins to +V fixed the problem.  I had overlooked them because I plan on connecting the  LT, BI, and the Latch Enable to a demultiplexer.

I appreciate everyones help.