主题中讨论的其他器件:BQ28Z610、
您好!
我们有一个定制板、其中3 个 BQ28Z610电量监测计连接到 PCA9544A 通道0、1和2。 我们在 绕过 PCA9544A 将一个电量监测计直接连接到 I2C 线路时已建立了用于 PCA9544A 的 I2C 命令(请参阅 PCA9544A 的 I2C 通信链接: https://e2e.ti.com/support/power-management/f/196/p/814131/3028325#3028325)。
我们的 I2C 在100kHz 标准模式下运行。 我们对 I2C 多路复用器从地址使用了以下格式:0xE0+ + R/W、如数据表的第9节所示。
对于 I2C 通道0、硬件可选位为:A2=0、A1=0、A0=0。
对于 I2C 通道1、硬件可选位为:A2=0、A1=0、A0=1。
对于 I2C 通道2、硬件可选位为:A2=0、A1=1、A0=0。
通过在通道0处对 BQ28Z610电量监测计使用 I2C 命令协议、我们发出了 I2C 写入命令、其中 I2C 地址= 0x30、传输的数据与 BQ28Z610文档中建议的数据完全相同。 然后、我们尝试通过发出 I2C 读取命令来读取 BQ28Z610的一个寄存 器、I2C 地址= 0x31、但我们读回了错误的寄存器内容。 (即尝试读取 chem ID、预期值= 0x2158、但我们读取0xF0)。
我们是否为 I2C 多路复用器使用正确的协议格式、或者在尝试读取和写入从器件之前是否应发出其他命令?
谢谢、
Kat