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:有关电流调节和外部电阻器的问题

Guru**** 2538950 points
Other Parts Discussed in Thread: TLC5917

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1194020/tlc5917-question-regarding-current-regulation-and-external-resistor

器件型号:TLC5917

您好!

我目前正在使用 TLC5917对 LED 控制电路进行原型设计。 我在每个输出端都有1个 LED、我使用130欧姆电阻器来设置电流。 目前、LED 亮起、我可以更改亮度。 但是、我的电源仅消耗~80mA 电流、150欧姆电阻器不应导致每通道约125mA 的电流吸收?  

我的电路如下所示(我们目前不使用 SDO)。

我的代码如下所示:

while (1)



//特殊模式
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 ();


//发送当前配置代码

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();


//返回正常模式
/**/
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();


//发送数据

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();



如果有人对电流显示低于数据表的原因有任何想法、我会很感激。

谢谢

Jonathan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jonathan、

    • 首先、 对于 TLC5917、恒定输出电流不应大于120mA。
    • 如何设置 8位配置代码? 有什么价值?
    • 您能否向我展示如何连接 LED?  VLED 的值是多少?

    此致、

    Steven

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Steven、

    好的、请注意电流限制。 我现在只是尝试不同的值。

    为了澄清这一点、如果我使用130欧姆电阻器将电流输出设置为125mA、这是 所有 LED 输出的总电流消耗是否为125mA、还是每个 LED 的总电流消耗是125mA?

    要设置代码、我使用下面这段代码。 它应将所有位都设置为高电平。 1111111。

    /发送当前配置代码

    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();

    我的原型按照以下方式进行布线:

    谢谢

    Jonathan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jonathan、

    是的。 根据计算结果、150 Ω Rext 以及 8位配置代码=全1、应将输出电流设置为每通道约125mA。 同样、请避免使用超过120mA 的限值、即使您正在进行实验、以避免任何不必要的结果。

    除了这个超限问题、我从您的原理图中看不到任何其他问题。 请确保5V 电源稳定且无过流限制。

    [引用 userid="488597" URL"~/support/power-management-group/power-management/f/power-management-forum/1194020/tlc5917-question-regarding-current-regulation-and-external-resistor "]目前,LED 指示灯亮起,我可以更改亮度。

    一个问题:您如何更改亮度?

    此致、

    Steven

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Steven、

    我不确定问题在哪里。 我的电源电流限制没有达到、所以我认为这不是问题。 可能我损坏了芯片...

    我通过发送不同的电流配置代码来更改亮度、因此我可以将其设置为全0、LED 将变暗。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jonathan、

    情况很奇怪。 以下是有关调试的一些提示:

    1. 首先用一些较大值的电阻器替换150 Ω Rext。 然后检查芯片输出是否符合预期。
    2. 执行 ABA 测试(即将 TLC5917更换为已知的工作状态)。
    3. 检查您的设备。
      1. 检查您的电源是否准确测量电流。
      2. 直接使用 DMM 测量电流、而不是从电源读取电流。

    BTW、您使用什么 LED? 您有适合它的数据表吗?

    BR、

    Steven