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.
大家好、
以下是客户提出的问题、可能需要您的帮助:
我学习有关 PMBus 设计的演示代码。 它只是一个测试版本、数据表中没有关于通信异常或不遵循 PMBus 协议的情况的更多说明。
例如:
0x7E 命令是一个读取字节协议。 我们将发送字节计数设置为1或(1 + PEC)、但如果系统(主控方)读取3个或更多字节的数据。
该状态无法从 PMBus_STACK_State_Read_Wait_for_EOM 返回到 PMBus_STACK_State_Idle。
使用 PMBSTS 寄存器的数据为0x241810。 未接收到 EOM 和 NACK、数据请求位和单元忙位始终置位。
为什么设置了 unit_busy 位以及如何清除该位?
--
谢谢、此致
耶鲁大学
耶鲁大学
我假设 PMBus IP 用作目标(从设备)而不是控制器(主设备)。 如果它被配置为 PMBus 目标、PMBRXBUF 应该具有0x7E 命令、它从 PMBus 控制器接收到该命令。 然后、在读取模式下将出现重复起始、并发送1个字节以及自动传输的 PEC 字节
使用 PMBSTS 寄存器的数据为0x241810。 未接收到 EOM 和 NACK、数据请求位和单元忙位始终置位。
为什么设置了 unit_busy 位以及如何清除该位?
[/报价]当您接收 DATA_REQUEST 位时、需要让 PMBus 目标发送一个字节。 设置 unit_busy 是因为 PMBus IP 已收到重复起始且总线繁忙。 当总线空闲时、该位自动清零。 此外、请使用逻辑分析仪向我们发送 PMBus 总线信号的快照。
此致、
曼诺伊