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.

[参考译文] UCD9090:STATUS_CML 寄存器中卡在其他通信故障

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/633781/ucd9090-stuck-at-other-comms-fault-in-status_cml-register

器件型号:UCD9090

您好:

我们将 UCD9090用于不同的电压轨监控 、如下图所示:

最近、我们尝试通过我们自己的 PMBus 主机写入 MFR ID 和修订版寄存 器、MCU 是 TI Hercules RM57、写入过程是块写入、读取和保存。 有时工作正常、有时工作不好、看起来不一致、这是正确的编写过程吗?  

我们通过 Fusion GUI 使用了 TI 仿真器进行 UCD9090配置、看起来没有任何问题、但在我们使用自己的固件写入 MFR 寄存器后、UCD9090会继续报告其他 Comms 故障、如下所示:

该故障将使 ALERT 引脚有效并关闭所有电源轨、因此我们的 MCU 无法启动、直到我们连接 TI 仿真器并运行 Fusion GUI 来打开电源轨。

您能否帮助我们了解为什么在电源复位后将此故障报告为无任何通信? 我们如何消除该故障? UCD9090是否有任何命令可重置为出厂默认设置?

非常感谢!

插孔

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

    请您分享您的 FW 做了什么? 它是否遵循 PMBus 协议?

    您是否将 ALERT 引脚连接到 RESET 或电源控制引脚? 我需要更多信息来了解警报如何关闭电源。

    谢谢

    Yihe

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

    您好!

    请查找随附的 C 代码和原理图、如果您需要更多信息、请告诉我、我认为我们遵循 PMBus 协议、因为读取时没有任何问题、只有在写入后、电源复位后才会触发其他通信故障。

    e2e.ti.com/.../psdrv.c

    我们没有将 ALERT 引脚连接到复位和电源控制引脚。 电源控制引脚连接到 MCU、并在初始化期间设置为高电平、在这种锁定情况下、MCU 无法运行、该引脚在电源复位后为低电平。

    周五、我尝试通过 TI USB 适配器擦除所有数据闪存并重新加载配置、仍然触发其他通信故障、是否会记住此故障? 实际上、在电源复位期间、MCU 未运行、不应与 UCD9090进行任何通信、如何可能触发此故障?

    谢谢!

    插孔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    其他通信故障与配置无关、很可能是由您自己的代码引起的。 我建议采用以下方法:
    从您自己的代码中找出导致位集的命令、在示波器上捕获整个 i2c 转换并比较来自 TI Fusion GUI 发出的同一命令的波形。 希望这有助于隔离问题。
    此致
    Yihe
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好:

    我将比较波形。 谢谢! 但我的问题是、故障发生在 MCU 尚未运行、完全没有通信的情况下、并且每次 UCD9090电源复位时都会触发故障。 电源复位后、所有电压路径都关闭、除 UCD9090外、任何其他芯片都不会开始运行。 UCD9090在没有任何 PMBus 通信的情况下报告其他常见故障的可能性是怎样的、我们有两个电路板存在同样的问题。

    因此、在这种情况下、我们每次都需要连接 TI USB 适配器来解锁 UCD9090、它将打开所有电压路径、如果检查故障、则会出现另一个常见故障、清除此故障后、我们的 MCU 无法无任何故障地与 UCD9090通信。

    由于用户手册中没有非常清楚地描述其他常见故障、您能帮助澄清更多信息吗? 我们可以禁用或旁路该故障吗? 否则、如果发生此故障、我们的电路板将完全被欺骗。


    我想知道我们是否在 UCD9090内部程序空间内发生了故障、这是可能的吗? 如数据表中所述、UCD9090具有 ECC 保护、当 ECC 错误时、UCD9090将停止固件执行、I2C 通信除外、这与我们的情况非常接近。


    谢谢!

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

    I2C 总线上必须有一些通信。 您能否在 UCD 上电时捕获波形? 我看到使用了 PCA9517A。 您可以探测 PCA9517A 两侧的信号。 您可以使用 PMBus 警报信号作为触发器、因为当 UCD 具有其他常见故障时、该引脚为低电平。

    另一个命令故障意味着器件会在总线上看到意外转换。

    但具有"另一个命令故障"不应影响 UCD9090的正常电源监控和定序功能。 请分享您的 UCD9090项目文件吗? 我想更详细地了解这一点。

    此致

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

    您好、Yehe:

       您是对的、其他通信故障不会影响正常的电源监控、我们确实会在其他设置中看到此故障。昨天、我发现我们的代码在写入设置时有一些错误、我们在完成数据包时忘记生成停止条件、 我想知道这个不停的数据包在 UCD9090内部发生了什么故障。 我在电源复位后捕获了波形、ALERT 引脚保持高电平但所有电源轨关闭、没有任何通信、UCD9090似乎停止运行、连接 TI USB 适配器并运行 Fusion GUI 后、Fusion 将尝试与 UCD9090通信、 然后 UCD9090开始运行、下拉 ALERT 引脚并打开所有电源轨、之后、我们的 MCU 开始运行。 请查找在电源复位后捕获的附加波形。

    黄色:ALERT 引脚、紫色:CLK、蓝色:数据

      我认为我们的项目文件应该没有问题、因为它已经在工厂中编程了数百个电路板、没有任何问题、直到我们尝试实施代码来写入一些没有停止条件数据包的设置。

     

       我还比较了使用 Fusion 工具和我们的代码之间的波形、发现 Fusion 工具在每个字节之间放置延迟是此芯片所要求的。 我们还发现、如果我们不在发送和接收之间设置延迟、有时通信会失败、请在下面找到从代码到读取状态的波形。

    请查找随附的项目文件:

    e2e.ti.com/.../UCD9090_5F00_Configuration_5F00_Rev_2D00_B.xml

    谢谢!

    插孔

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

    此问题已离线解决。 原因是 MCU 意外发出0xD9命令以强制器件进入 ROM 模式。 一旦器件处于 ROM 模式、它将停止响应正常的 PMBus 命令。

    启动 FUSION GUI 后、它会自动暂时将器件退出 ROM 模式、以恢复正常功能。 但在对器件进行下电上电时、它会保持在 ROM 上。

    此致

    Yihe