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.

[参考译文] TPS546A24A:TPS546A24A

Guru**** 2535680 points
Other Parts Discussed in Thread: TPSM846C23DEVM-807

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1347904/tps546a24a-tps546a24a

器件型号:TPS546A24A
主题中讨论的其他器件:TPSM846C23DEVM-807

您好!

我设计了一个使用 TPS546A24ARVFR 器件的电路板。 我的目的是使用 USB 转 I2C/SMBus 适配器通过 Linux OS 对此器件进行编程。 我们使用的两个适配器分别是 Total Phase USB 转 I2C 和 Silicon Labs USB 转 I2C 适配器。 当我们尝试通过 PMBus 对器件进行编程时、没有被检测到。 您可以查看下面的查询并帮助我提出电路板

我的查询是
1) 1)由于我使用 Linux 来检测从器件地址、是否需要为 PMBus 安装任何驱动程序、检测 i2c 从器件的命令(如果不是使用的通用命令)是什么

2) 2) PMBus 编程是否要遵循任何电源顺序或过程? (适配器连接的导线是使用外部 GPIO 接头的 SCL、SDA 和 GND 引脚)

3) IC 似乎可以正常工作、因为我在输出端获得3.3V 电压(根据硬件引脚设置 VSEL 电阻器)、但它无法被检测到、无法通过 PMBus 进行访问。

请找到电路原理图的引脚以供参考。

 

此致、

M·卡尔蒂克

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

    Karthik、您好、

    如果您使用的是我们的 Fusion GUI、我们为您 提供帮助的最方便的方式是、您可以通过下面提供的链接安装该 GUI:

    https://software-dl.ti.com/analogue/analogue_public_sw/fusion/TI-Fusion-Digital-Power-Designer-7.10.1.zip

    我们还有 USB-TO-GPIO 适配器、您刚才提到的适配器也可以正常使用。  

    https://www.ti.com/tool/USB-TO-GPIO2

    关于您所面临的问题、可能是由于使用了 I2CDetect、它会尝试在总线上的每个地址上提供一个地址+ Rd 位。 这是 PMBus 中的无效事务。 如果您认为确实是这样、您可以尝试使用-q (快速写入)或-r (读取字节)选项来检测 TPS546x24y 系列器件。

    要 使用 PMBus 配置器件、请将输入电源调整为3.3VDC、以避免发生任何转换器活动。  

    谢谢!
    Tomoya

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

    尊敬的 Tomoya:

    我没有收到这条语句、"要 使用 PMBus 配置器件、请将输入电源调整为3.3VDC、以避免发生任何转换器活动。"  
    因为我们使用5V 输入电源将电压下变频为3.3V、之后用于配置 PMBus 线路。 这意味着转换后的电压、还是在转换电压时、PMBus 引脚不会处于活动状态?
    此外、您是否可以共享命令-q 来进行快速写入、是相同的 sudo i2cdetect -y -q 或者、它对于 PMBus 是否不同?  

    此致、
    M·卡尔蒂克

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

    Karthik、您好、

    通常、我们需要确保在配置期间关闭输出。 我建议使用3.3V 电压、因为在3.3V 电压下、PMBus 将被激活、但输出电压转换被禁用。 但是、关闭转换的其他方法包括使 EN/UVLO 引脚低于其 UVLO 阈值。  

    这是否意味着转换后的电压或在转换电压时,PMBus 引脚将不会激活?

    如果输入电源(或 AVIN)高于其 UVLO (典型值为2.5V)、 无论转换器输出是开启还是关闭、PMBus 都将激活。

    但是、并非所有寄存器都允许实时更新;如果启用转换、则某些 PMBus 配置将被阻止。 因此、我们不建议在启用转换器时进行配置。 下面我们举例说明:

    此外,您是否可以共享命令-q 以进行快速写入,是相同的 sudo i2cdetect -y -q 或者、它对于 PMBus 是否不同?  [/报价]

      I2C 扫描的默认设置是将包含器件读取地址(7位地址+读取)的 I2C 数据包发送到每个可能的器件地址、并返回器件确认的地址、以便在总线上"发现"器件。 但是、PMBus 会将以"读取地址"开始的事务视为无效。 使用-q 和-r 可以 通过发送地址+写入位来解决此问题。  

    https://linux.die.net/man/8/i2cdetect

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

    尊敬的 Tomoya:

    正如您建议的那样、我们移除了 EN/UVLO 引脚的电源并将其接地、以便停止转换器功能。 我们使用5V 电源、因此这足以使 AVIN 和更高 UVLO 激活 PMBus。
    但在终端上仍然无法检测到地址。 我们还尝试了在禁用电压转换的情况下使用3V3电源、但在端子上未检测到任何
    为了确认适配器工作状态、我们通过 TPSM846C23DEVM-807检查了 CP2112EK、其中该 EK 正常工作、无任何错误、可通过主地址检测寄存器、能够使用终端中的命令生成所需的输出电压。

    以下是用于检测 TPS546A24 IC 中从器件地址的逻辑分析仪接入

    此致、
    M·卡尔蒂克

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

    Karthik、您好、

    我与一个团队沟通过、事实证明您遇到的问题是 TPS546x24y 系列器件中的一个已知错误。 当器件接收到其地址和读取位时、它将进行 NACK、而不是根据 PMBus 规范跟踪和报告 CML 警告。

    要解决此问题、请确保您使用的是正确的读取协议。 TPS54624A 不会响应具有7位地址和读取位的直接读取事务(如您在搜索中所做的那样)。 相反、它要求所有事务都以7位地址开始、后跟写入位、然后是命令代码。

    我希望这会澄清任何混淆。 如果您有任何进一步的问题、请告诉我。

    谢谢!
    Tomoya

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

    尊敬的 Tomoya:

    请根据我们正在使用的协议、即使用" i2cdetect -y -r、了解此处正确的读取协议是什么 '命令。
    此外、正如您提到过的、

    1. CML 警告是否出现在我之前提供的针中?

    IT NACK 而不是根据 PMBus 规范跟踪和报告 CML 警告

    2.这里需要什么是事务,以及如何在终端内启动这些事务,这是否意味着在执行 i2cdetect 命令之前,需要执行任何其他命令?

    所有事务都需要以7位地址开始,然后是写入位,然后是命令代码

    此致、
    M·卡尔蒂克

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

    Karthik、您好、

    您需要做的是将 用红色圈出的位更 改为0。 这样可以解决您的问题。  

    谢谢!
    Tomoya

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

    尊敬的 Tomoya:

    圆圈位表示时钟信号、

    1) 1)我需要使时钟信号成为0还是数据信号?

    2)另外,我使用命令' i2cget -y 7 0x24 w '直接渗透到从机读出,但它失败。

    3)对于上述的解决方案,我可以使用'i2cset -y 7 0x24 0x ....  0x...B.... '在这里、我不确定应该是什么、应该是什么、B 的值是什么(根据您在上面建议的值、假设为0x00)

    此致、
    M·卡尔蒂克

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

    Karthik、您好、

    它是您需要更改的数据信号、而不是时钟信号。 时钟信号应为1、0、1、0、1、 0等

    有关读取协议、请参阅 SMBus 规范:

    如果您有任何其他问题、请直接通过 t-ide@ti.com 与我联系。

    谢谢!
    Tomoya

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

    Karthik、您好、

    由于没有响应而关闭此线程。 如果需要进一步支持、请重新打开。

    谢谢!
    Tomoya