This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TLC5944 multiplexing problems

Other Parts Discussed in Thread: TLC5944, SN74LS47

Hi there,

im currently using 3 TLC5944 (48 channels total) per board (daisy-chain configuration) to control 64 RGB pixels. Im multiplexing 4 rows. Each pixel is formed by 9R9G9B LEDs: 3 groups in paralell of 3 LEDs in series for each color.

For example, Red LED works typ. with a Vf: 2V and If: 20mA, so we would have a total of 6V @60mA for Red channels and for greens/blues i have Vf 3.4V and If: 20mA. That gives us 10.4V @60mA for those channels. IREF resistor is 820 ohms ±1% (60mA).

Im using a pair of IRF530 and IRF9530 for each row.

The display works fine, but im having problems with black. Even sending black grayscale values(zero for all outputs) is making some LEDs to weakly turn on. I have VLED pins connected to 12V (this is the voltage im using for rows). If i force and stay VBLANK high all LEDs turn off completely.

I looked at outputs with an oscilloscope and pre-FETs seems to be working.

Is this a problem of having groups of LEDs in paralell/series per output instead of just one LED? What should i try?

Im attaching a picture of the problem.

Thanks for reading.

  • Hello Bruno,

    Use to have that problem back in the days is the SN74LS47.  Adding 10k pull down resistors to the outputs fixed the problem of ghosting.  You may want to go with the highest resistor value to reduce current drain.  Depending on your layout, it may not hurt to put them on some of the input lines if you detect any noise.

    Thanks,

  • Hello!

    Thanks for your help. I ried with 1k pullups(pull down would only increase ghosting effect, because TLC controls LEDs cathodes), but nothing changed. Of course, pre-FETs should be doing their job better than pullups. I will try disconnecting VLED and trying again with pullups!

    Thanks!

  • Yes, the per-FETa should be doing their job and the resistors should not be required.

    On page 23 and 24 of the TLC5944 they show how the system is suppose to work.  Do you have the BLANK controlled by the MCU or is it floating?

  • Im controlling BLANK with the MCU. Im using exactly that circuit. The only thing i added is a ULN2803 and a couple of pullups for row enabling.

    I think maybe its related to the quantity of LEDs per output, becase looking at the picture you can see that some LEDs, even connected to the same output and row(that would be, part of the same pixel) turn on, and others dont.

    Im seeing some LEDs turn on, even with the power supply turned off (but still connected). This is really strange.

  • Ah, perhaps that is the problem.

    It is actually not that strange to see the LEDs light up.  If you are working on a non grounded bench and your chair is not on a grounding map, then if you hold one end of the led in one hand and touch it to your bench, you may see it glow.  So I suspect you are injecting some AC into your circuit.

    If possible, you can try increasing the timing interval between led off, blank and led on.

    If you are doing this on a breadboard, all the stray capacitance could be the culprit.  Add 10k pullups to to the ULN2803 outputs.  This should fix your problem for sure.  It's guaranteed.

    ...good thing I can come back and edit this post if it doesn't work! LOL!