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.

TLC5917: Question regarding current regulation and external resistor

Part Number: TLC5917

Hello,

I am currently prototyping an LED control circuit using the TLC5917. I have 1 LED at each output and I am using a 130 ohm resistor to set the current. Currently, the LEDs light up and I can change the brightness. However, my power supply only draws ~80 mA, shouldn't the 150 ohm resistor cause a current sink of around 125 mA per channel? 

My circuit looks like below (we don't use SDO at the moment).

My code is like below:

while (1)
{



//special mode
OE1_SetHigh();
CLK_SetHigh(); CLK_SetLow();
OE1_SetLow();
CLK_SetHigh();CLK_SetLow();
OE1_SetHigh();
CLK_SetHigh();CLK_SetLow();
LE_SetHigh();
CLK_SetHigh();CLK_SetLow();
LE_SetLow();
CLK_SetHigh();CLK_SetLow();


//Send current config code

SDI_SetHigh();
CLK_SetHigh();CLK_SetLow();
SDI_SetHigh();
CLK_SetHigh();CLK_SetLow();
SDI_SetHigh();
CLK_SetHigh();CLK_SetLow();
SDI_SetHigh();
CLK_SetHigh();CLK_SetLow();
SDI_SetHigh();
CLK_SetHigh();CLK_SetLow();
SDI_SetHigh();
CLK_SetHigh();CLK_SetLow();
SDI_SetHigh();
CLK_SetHigh();CLK_SetLow();
SDI_SetHigh();
CLK_SetHigh();CLK_SetLow();
LE_SetHigh();
LE_SetLow();


// go back to normal mode
/**/
OE1_SetHigh();
CLK_SetHigh(); CLK_SetLow();
OE1_SetLow();
CLK_SetHigh(); CLK_SetLow();
OE1_SetHigh();
CLK_SetHigh(); CLK_SetLow();
CLK_SetHigh(); CLK_SetLow();
CLK_SetHigh(); CLK_SetLow();
OE1_SetLow();


//Send Data

OE1_SetHigh();
LE_SetLow();
SDI_SetHigh(); // LED1
CLK_SetHigh(); CLK_SetLow();
SDI_SetHigh(); //LED2
CLK_SetHigh(); CLK_SetLow();
SDI_SetHigh(); //LED3
CLK_SetHigh(); CLK_SetLow();
SDI_SetHigh(); //LED4
CLK_SetHigh(); CLK_SetLow();
SDI_SetHigh(); //LED5
CLK_SetHigh(); CLK_SetLow();
SDI_SetHigh(); //LED6
CLK_SetHigh(); CLK_SetLow();
SDI_SetHigh(); //LED7
CLK_SetHigh(); CLK_SetLow();
SDI_SetHigh(); //LED8
CLK_SetHigh(); CLK_SetLow();
LE_SetHigh();
LE_SetLow();
OE1_SetLow();



}

If anyone has any ideas as to why current is showing lower than the data sheet i would appreciate it.

Thanks

Jonathan

  • Hi Jonathan,

    • First, the constant output current should be no larger than 120-mA for TLC5917.
    • How do you set the 8-bit configuration code? What is the value?
    • Could you show me how you connect the LEDs? What value is the VLED?

    Best Regards,

    Steven

  • Hi Steven,

    OK, noted regarding the current limit. I am just experimenting at the moment with different values.

    To clarify, If i used a 130 ohm resistor to set current output to 125 mA, would that be a total current draw of 125 mA  combined across all the LED outputs or would it be 125 mA per LED?

    To set the code i use this piece of code below. It should set all of the bits high. 1111111.

    /Send current config code

    SDI_SetHigh();
    CLK_SetHigh();CLK_SetLow();
    SDI_SetHigh();
    CLK_SetHigh();CLK_SetLow();
    SDI_SetHigh();
    CLK_SetHigh();CLK_SetLow();
    SDI_SetHigh();
    CLK_SetHigh();CLK_SetLow();
    SDI_SetHigh();
    CLK_SetHigh();CLK_SetLow();
    SDI_SetHigh();
    CLK_SetHigh();CLK_SetLow();
    SDI_SetHigh();
    CLK_SetHigh();CLK_SetLow();
    SDI_SetHigh();
    CLK_SetHigh();CLK_SetLow();
    LE_SetHigh();
    LE_SetLow();

    My prototype is wired up as per the below:

    Thanks

    Jonathan

  • Hi Jonathan,

    Yes. From calculation, a 150-ohm Rext, together with 8-bit configuration code = all ones, should set the output current to be around 125 mA per channel. Again, please avoid using over 120 mA limit, even if you are experimenting, to avoid any unwanted results.

    Except this over-limit issue, I do not see any other issue from your schematic. Please make sure the 5V power supply is stable and there is no over-current limit.

    Currently, the LEDs light up and I can change the brightness.

    One question: How did you change the brightness?

    Best Regards,

    Steven

  • Hi Steven,

    I am not sure where the problem is. My power supply current limit is not being hit so i don't think thats the issue. Maybe i have damaged the chip...

    I change the brightness by sending a different current config code, so i can set it to all 0s and the LEDs will dim. 

  • Hi Jonathan,

    The situation is weird. Here are some tips for your debug:

    1. Replace the 150-ohm Rext with some larger value resister first. Then check if the chip output as expected.
    2. Do an ABA test (i.e. replace the TLC5917 with a known-to-work one).
    3. Check your equipments.
      1. Check if your power supply measures the current accurately.
      2. Measure the current directly with a DMM rather than from reading from the power supply.

    BTW, what LED do you use? Do you have a datasheet for it?

    BR,

    Steven