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.

TLC5941: TLC5941 => LED Blinking

Part Number: TLC5941

Hello , 

I have a question about TLC5941 , Cuz my LED system is blinking ! 

1. My GSCLK is 5Mhz , Xlat is 30hz (GS data refresh rate) , IREF = 620 ohm , DC = 6'b000100 , and every pwm cycle is 4096 except one cycl isn't 4096 , 

    in this condition , when I set gs data = 12'hfff  it won't blinking  but when I set data below 12'h500 , it will blinking !  

    Here is my waveform , thanks a lot ! 

  • Hi, Rafe,

    Eveytime after you sent XLAT pulse to latch new GS data, please send a BLANK pulse to reset the GS counter.

    You can refer the the following figure:

    One fast way to check it, you can connect the BLANK and XLAT together.

    Please let me know if this solves your problem.
    Thanks.
    Regards,
    Kenneth

  • Hi Kenneth ,

    First of all , thanks for your reply ~ 

    I know when xlat pull high blank should pull high ,too . In my case is also like that .

    My xlat is following Video signal (vsync) , which is 30Hz.  If I sent only 1*4096 GSCLK to fill the frame (33.32ms)  , it will blinking . 

    So , I sent n*4096 GCLK  to increase the numbers of pwm cycle . But the last pwm cycle isn't 4096 GCLK then Blank pull high (just like figure 1) and the LED is blinking . 

    What should I do ?  Because it's difficult to let n*4096 GCLK = 33.32ms , so in my case , the last pwm cycle isn't 4096. 

  • Hi, Rafe,

    Understand your application.

    In your case, since 520 us is not a complete duty cycle, so when you use gs data = 12'hfff, the out are always ON and there is no difference. But if gs data=12'h500, since the last duty cycle, the out are not the duty you want to set, then it blinks.

    To solve your problem, there are two ways:
    1. If Vsync signal can be adjusted, you can use another frequency to make sure you have n*4096 GCLK, for example 30.5Hz can achieve 39*4096 GCLK.
    2. If Vsync is fixed, you may need to increase GSCLK frequency from current 5MHz to higher like 20MHz to decrease the last GCLK period.

    Please let me know if this helps.

    Thanks.
    Regards,
    Kenneth
  • Hi Kenneth ,

    Thanks your suggestion , I know what to do.

    1. Is there any data or safe time of the last GCLK period  ?  

    For example : Higher than 60us will not blink , or something else ~

    2. Or if the last period is finished , how long I should pull blank high then start a new pwm cycle is safe. (like below figure)

    Cuz client A  vsync is a value , client B will another value , so if any data like limit T or limit blank number will not blink , it's very helpful !

    Thanks again ~

  • Hi, Rafe,

    Sorry but we don't have such kind of data to tell when will blink or not, because as you know this is ralated to many factors like PWM duty, LED current, even human eye...

    From our side, it is highly recommand to sync the GSCLK and Vsync, and always use n*4096 GSCLK. But if Vsync can't be changed, you may need to adjust GSCLK frequency.

    Sorry agagin for the trouble you meet.

    Hope this helps.

    Thanks.
    Regards,
    Kenneth
  • Hi Kenneth ,

    OK, I understand . Thanks a lot !