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.

[参考译文] DS90UB948-Q1:I2C 仲裁错误

Guru**** 2460850 points


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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1487346/ds90ub948-q1-i2c-arbitration-bug

器件型号:DS90UB948-Q1

工具与软件:

尊敬的专家:

我的客户发现、在一种情况下:soc 使用947-948远程 I2C 将帧发送到 MCU (MCU 侧)、当 MCU 意外进入控制器模式并读取948寄存器时、948/MCU 之间的 I2C 总线可能被拉低且无法正常工作。

我看到多控制器应用程序存在仲裁、在某些情况下是否会将948拉低 I2C 总线电平?

谢谢!

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

    尊敬的 Jass:

    谁是第1级和 OEM?

    根据 I2C 总线上的活动、总线可能会被"锁定"。 根据您所描述的内容、听起来在 MCU 执行 I2C 读取的同时、正在向 MCU 发送 I2C 写入。 这将导致仲裁器发生冲突、因为 I2C 协议无法区分这两个事务。  

    以上对客户行为的解释是否准确? 如果可能、请提供发生问题时 I2C_SCL 和 I2C_SDA 线路的波形。

    此致!

    Nikolas

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

    你好、Nikolas、

    OEM 是 SAIC、一级是 Bitech (947)、Hiway (948)。

    您是对的、但这不是100%重现的错误、我们没有得到波形。 我们可以从数据表中支持多控制器、 这是您提到的948端或 MCU 端的冲突(因为既是控制器/器件)。

    谢谢!

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

    尊敬的 Jass:

    如果没有波形、就很难判断这种冲突是源自948 DES 侧还是 MCU 侧。 根据问题发生的频率、从控制器 侧和主机侧捕获监控 I2C 线路的波形可能会很有用。

    在任何情况下、您都可以正确操作多控制器、但请注意第7.6.3节中详述的限制。 问题可能是由于未满足列出的三个条件之一而发生的。

    此致!

    Nikolas