尊敬的德州仪器团队:
我们的应用具有多个通过 I2C 使用 MCT8316A 的电机(使用电阻降压)、该应用具有一个微控制器 SAMV71Q21、由于不能修改地址、我们使用 I2C 转换器从0x51变为0x00、 然而、由于这个原因、通过使用与我包含的调试器件相同的总线(显示为红色)、一个额外的主器件被标识为主器件2、一个从器件被标识为0x03。

通过使用主器件2 (调试)、我向地址0x51发送信息、字节0x00、然后我从电机 A 收到了 ACK、请查看图形、您可以看到从0x51转换为0x00是如何工作的、 没有任何问题。
黄色=SLC 总线
CIAN=SDA 总线
蓝色=转换器后的 SCL
Pink=SDA 转换器后
f=50.015kHz
接收到 ACK

但是、通过使用主微控制器1、我收到了 NACK、当主器件1需要时、电机控制器没有应答(f=49.55kHz)。

我尝试了主器件1与从器件0x03 (f=49.55kHz)进行通信、并且收到了 ACK、因此主器件1可以与 I2C 通信、因此本质上而言、问题是我尝试与电机 A 和主器件1进行通信时。
如果您能帮助我们解决以下问题、我将不胜感激:
1.为什么电机控制器采用一个微控制器的 ACK 方法,而不是另一个连接到同一个 I2C 总线?
2.在频率 ( f=50.015Khz 成功的通信)和 ( f=49.55Khz 失败的通信)之间是否存在差异?
3、导致此行为的原因是什么、当使用主设备1时、我们需要修改哪些内容才能接收来自电机 A 的 ACK。
如果 需要其他信息、请告诉我。
谢谢。