主题中讨论的其他器件: 66AK2G12、 EVMK2G
团队、
我的主要客户的紧急问题。
我先和你们一起、尽管我知道这可能需要转移到另一个论坛。 我的客户在电路板上采用 TPS65400进行设计、以帮助为66AK2G12处理器供电。 他们基本上都在尝试使用示例代码、让 K2G 与 K2G EVM 上的 PMIC 通信、只是将代码调整为与定制板上的 TPS65400通信。 遗憾的是、它们无法通过 I2C 与 TPS65400通信。 您能否至少确认 TPS65400没有基于 I2C 总线范围的错误行为? 来自客户:
我修改了 RTOS I2C_BasicExample_evmK2G_armTestProject、以访问 K2G EVM 板上的 PMIC TPS659118。
RTOS 示例代码是通过 I2C0访问 EEPROM。 我将 Board_I2C_EEPROM_Instance 从0更改为2、以通过 I2C2访问 PMIC TPS659118。
我能够读取 PMIC TPS659118寄存器值。
但是、当我使用相同的代码并更改 I2C 地址和命令以匹配我的板时、我总是读回0xFF。
我的板具有 K2G 和 PMIC TPS65400。 TPS65400支持 PMBus 协议 SMBus 2.0版。 以下是与 TPS65400通信时 I2C 总线的作用范围:
根据我在示波器上捕获的 I2C_SCL 和 I2C_SDA 波形、I2C_SDA 信号线的光标 b 处似乎缺少窄脉冲(绿色)。
将其与尝试与 TPS659118通信的情况进行比较:
I2C_SCL 信号为黄色、I2C_SDA 信号为绿色。 您可以在光标 A (恰好在 ACK 位之后)处看到 TPS65400没有的窄脉冲。
RTOS I2C API 是否支持 PMBus 协议 SMBus 版本2.0? 如果是、访问 TPS65400是否需要进行任何更改?
谢谢、
Brian

