• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Power Management » LED Drivers/LCD Bias » LED Drivers/LCD Bias Forum » Who can help me about TLC5970???
Share
LED Drivers/LCD Bias
  • Forum
  • Announcements
  • E2E Wiki
Options
  • Subscribe via RSS

Forums

Who can help me about TLC5970???

This question is answered
di han
Posted by di han
on Feb 28 2012 16:21 PM
Prodigy50 points

I am a student from Munich in germany. I am using TLC5970 in my labor.

I want to just let the LEDs lighting with SPI. And the LEDs dosent  light ,but flash(the LEDs turns on  and off quickly ).

I use SPI to transfer the needed data but.....the result is always the same.

I look for help from the datasheet but there are some Modes and i dont know which one i should use.

my program is like that:

first i transfer the  FC (Fuction Control) data. This data has 5 Bits that are very important :  DATRFH, DSPRPT, EXTCLK, TMGRST, DCENA. I didnt understand all of them.I just put all of them as the default value 0.I send this value 1111 0000 0000 0000 0000 0000 0000 0000 0111 1111

And then i transfer DS data for each LED. I send the buffer this value 1110 0000 0000 0000 0001 1111 1111 1111 0111 1111 

In order to let all LEDs with different colors lighting i send the value of GS.

At the end i use a While(1) to let the program go on and on.

while(1)

{

LED1_GS_Send();

LED2_GS_Send();

..........

LED6_GS_Send();

delay();

}

the above part is my program .The LEDs are flahsing and I have no idea to resolve this problem. This program is very important for me.So who can help me,please.

Thanks a lot.

Han

So who can give me a sugestion to resolve my problem.

Report Abuse
  • Reply
You have posted to a forum that requires a moderator to approve posts before they are publicly available.
All Replies
  • Brigitte
    Posted by Brigitte
    on Feb 29 2012 03:31 AM
    Genius14215 points

    Hello Han,

    Just to make sure that I understand you correct: Which bit in the above data streams are you sending first? You have to send the MSB first and the LSB last. Please define where the MSB is located in the above data stream.

    Below descriptions are based on MSB is the most left bit and you are sending this bit first:

    DSPRPT: If you set this bit to 0, you have to send the input data fast enough to have it available when 4096 pulses of the internal 10MHz counter are passed, otherwise the IC is stopping the output and is waiting until the new data is available.

    Here is some more description from the datasheet:
    AUTO DISPLAY REPEAT
    Auto display repeat, DSPRPT, allows OUTn to continuously turn on for multiple PWM cycles without the need to continuously reprogram the PWM grayscale registers. When Auto Repeat is enabled, bit 8 in the Function Control Data Latch is '1' and OUTn automatically turns on again at the next rising clock of the internal oscillator. When Auto Display Repeat is disabled by setting the control bit to '0', OUTn do not turn on again until an internal latch pulse is generated and another GS clock pulse goes high. This timing is shown in Figure 19 and Figure 20.

    Please check if your problem is gone when you set this bit.

    Best regards,
    Brigitte

    TLC5970 auto repeat function
    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • di han
    Posted by di han
    on Feb 29 2012 09:17 AM
    Prodigy50 points

    thank you very much Brigitte.

    I set the Bit DSPRPT and check if i have seted the right MSB and LSB, but the result is not changed.

    The leds are flashing but not always lighting.

    my hardware is the " No Buck Converter Operating Mode".

    But i just want to light my LEDs.Do i need a EEPROM to operate it?

    And the LEDs flash that means at least my SPI works well,but where is my fault?????

    Best regards,

    Han

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • di han
    Posted by di han
    on Feb 29 2012 10:55 AM
    Prodigy50 points

    Hello,Brigitte.

    Do I need to send DC and BC?

    I send at first DC,then FC with BC, at last i send GS.

    after sending 40 bits i need to make a delay for Latch Pluse, do i right understand?

    the date sheet is so complex. And as a  programer i dont know what should i do from the date sheet.........for example i use EEPROM or not? Do I need to transfer DC and i transfer the data DC and then BC? or first BC and then DC? Or i transfer only GS........

    that makes me unhappy surely.

    Best regards,

    Han

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Brigitte
    Posted by Brigitte
    on Mar 01 2012 02:23 AM
    Verified Answer
    Verified by Brigitte
    Genius14215 points

    Hello Han,

    When you take a new TLC5970, the factory default values for DC and BC are 7F and therefore you just need to write the data into the GS PWM registers to turn the LEDs on.

    Please try to input the following data.

    For FC data, "1111-0000-0000-0000-0000-0000-0000-0001-1111-1111".

        The data sets the following status.
        1. All BC = '1'. So full BC (7Fh*RGB)
        2. Auto data refresh is enabled.
        3. Display repeat is enabled.
        4. Internal PWM clock is selected.
        5. Timing reset is not enabled.
        6. DC data is fixed to same data as programmed data in EEPROM. It is '7Fh' (FULL data*RGB).

    For writing the GS data, use this: 0000 1111 1111 1111 1111 1111 1111 1111 1111 1111, this turns the LEDs fully on. When you want to reduce the curren through one of the LEDs, please change the GS data only.

    I think you can see that LED lamp is turned on-off without any flashing.

    Best regards,
    Brigitte

    Auto Repeat TLC5970 buck off
    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • di han
    Posted by di han
    on Mar 01 2012 09:05 AM
    Prodigy50 points

    Thank you very much Brigitte.

    And I have a question about the delay between transfering the Data.

    for example I have 6 LEDs, and i must transfer 6 FCs and 6 GS . At first i send the first GS  to the first LED and then I need a delay for internal pulse or no?if not ,then  i dont need to wait and quickly send the second GS and so on until to the end LED.

    I see the datasheet and there is a internal pulse that is very important . So i think i should give the pulse a litte time. So i add a delay after that i send every GS and FC . But I dont know if i am right.

    Best regards,

    Han

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Brigitte
    Posted by Brigitte
    on Mar 01 2012 09:25 AM
    Genius14215 points

    Hello Han,

    How did you connect the LEDs you have to the TLC5970? Are you using 2 TLC5970 or do you have 2 LEDs in series and just use 1 TLC5970 for 6 LEDs?

    Best regards,
    Brigitte

    TLC5970 LED configuration
    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • di han
    Posted by di han
    on Mar 01 2012 22:30 PM
    Prodigy50 points

    Hello Brigitte,

    Every TLC5970 controls only 1 LED and there are totally 6 TLC5970 and 6 LEDs.They are connected in series.

    Best regards,

    Han

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Brigitte
    Posted by Brigitte
    on Mar 02 2012 02:41 AM
    Genius14215 points

    Hello Han,

    Do you need such a high current per LED to just have 1 LED on 1 TLC5970? Generally the part is able to drive 3 LED strings.

    If you need such a high current and do not need all the other functions of TLC5970, I wonder if TLC5960 is maybe the easier solution for your application.

    Best regards,
    Brigitte

     

    Output current tlc5960 TLC5970
    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Brigitte
    Posted by Brigitte
    on Mar 06 2012 06:54 AM
    Genius14215 points

    Hello Han,

    The IC detects the time between the clock pulses. As long as this time is shorter than the time programmed into LATTIM which is Fh (around 17us (sorry for this mistake 17ms is correct), given on page 41 in the datahsheet) by default. The internal latch signal is generated when the clock signal is interrupted for at least this time.

    So when you want to program the 6 series parts, you have to input all 240 bits of GS or FC data in a row and then wait for at least 17us (no 17ms)  before you input the next data stream.

    Please make sure that the datastream is never interrupted for more than 10us when not all data for all parts is input, otherwise wrong data will be latched.

    Best regards,
    Brigitte

    TLC5970 series connection
    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • ROGER PENNELL
    Posted by ROGER PENNELL
    on Apr 16 2012 08:58 AM
    Prodigy20 points

    Hi Brigitte,

    I am working on a project using the TLC5970 IC at the moment and found this thread, one of the few dealing with this IC. I believe that the OP's problem was caused by allowing insufficient time to trigger the internal latch. I set up my code using your explanation here and had the same "flashing" result. After reading through the data sheet more carefully I found that the default timing is actually 17ms, not 17 us. Correcting this in my code resolved the issue. 

    Now I have to adjust the latch timing to make it suitable for my application and I am having no luck writing to the eeprom. I believe I am following the datasheet instructions correctly. My process is to power up the micro and the VCC on the TLC5970, apply 19V to the VROM pin, transfer 1100 1010 0101 0000 0000 0000 0001 1000 0000 0000b MSB first, delay 1 sec, write FC and then trial GS data with the new latch speed. The EEPROM write does not seem to work as I go back to having the flickering output  from the LEDs. Have I made an error somewhere?

    Also, there is an error in the datasheet in the adress register chart. It lists the binary equivalent of A5 as 01010101, missing a bit.

    Your help is greatly appreciated,

    Roger.

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • ROGER PENNELL
    Posted by ROGER PENNELL
    on Apr 16 2012 09:46 AM
    Prodigy20 points

    Hi Brigitte,

    Please disregard the issue with the EEPROM write, there was some fairly significant noise on my 19V line. Everything is working as expected now, thanks!

    Best Regards,

    Roger.

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Brigitte
    Posted by Brigitte
    on Apr 16 2012 10:15 AM
    Genius14215 points

    Hello Roger,

    Sorry for the mistake. You are correct with 17ms not us.

    For the datasheet mistake, you are correct and we will change this with the next datasheet revision. Thank you.

    Best regards,
    Brigitte

    TLC5970 default internal latch timing
    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
TI E2E™ Community
  • Support Forums
  • Blogs
  • Videos
  • Groups
  • Site Support & Feedback
  • Settings
TI E2E™ Community Groups
  • TI University Program
  • Make the Switch
  • Microcontroller Projects
  • Motor Drive & Control
Other Communities
  • Deyisupport
  • Designsomething.org
  • beagleboard.org
  • TI on Element 14
  • TI on TechXchangeSM
Other Technical & Support Resources
  • WEBENCH® Design Center
  • Product Information Centers
  • Technical Documents
  • TI Design Network
  • TI Technical Articles
  • TI Training

All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
embedded processors, along with software, tools and the industry’s largest sales/support staff.

© Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy Policy | Terms of Use