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.

[参考译文] UCD3138128A:UCD3138128A PMBus 超时

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/759648/ucd3138128a-ucd3138128a-pmbus-time-out

器件型号:UCD3138128A

您好!

我遇到了 PMBus 超时的问题。

正如我所知,我使用 CLK_LOW_TIMEOUT,但超时为35mS,客户超出规格。

我想引用 GPIO 上的逻辑低电平,但  在下表中找不到像 PMBus-CLK 这样的 GPIO。

如果我使用 PMBusRegs.PMBST.bit.SCL_RAW,PMBus 将在一段时间内断开连接。 我该怎么办?

 

buff = PMBusRegs.PMBST.bit.SCL_RAW;

 if (!buff) mTog_EPOW();

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

    无论如何、使用 clk 引脚来确定时钟低电平超时不是一个好主意。  您可能会轮询并错过时钟变为高电平的情况、尤其是在时钟扩展很多的情况下。

    最好查看 PMBus 是否繁忙。  我们过去针对不同的时钟低电平规格所做的工作如下:

    在标准中断中设置一个计时器、该计时器将向上计数直到所需的超时。

    如果 PMBus 函数中发生以下任何情况、请清除该时间:

    该功能处于空闲模式、但未设置 UNIT_BUSY 位。

    2. PMBus 函数上的任何活动-接收字节、数据请求、接收到的命令等  

    这是我们解决这一问题的最佳方法。  

    如果确实发生超时、请重置 PMBus 接口硬件、并将 PMBus 状态设置回 空闲状态。