工具/软件:
您好:
我们遇到了与链接的原始帖子相同的问题。
从那时起、我想检查一下、控制器在压力情景中是否存在任何已知问题?
我们的 TQMa62xx SOM 采用 AM6234、不运行 Linux、而是运行带有自己 I2C 驱动程序的 RTOS(轮询模式)。

在正常运行期间、驱动器检查“总线忙“BB = 0、然后开始传输。 新的字节由 XRDY(发送就绪)或 RRDY(接收就绪)指示。
在 ARDY(访问就绪)结束时表示完成状态、并且可以写入配置寄存器以进行下一次传输。
在正常条件下、所有 I2C 通信均正常工作。
在应力测试期间、我们可以看到在读取操作 (0x1410/0x1010) 期间设置了 XRDY、并且未设置 ARDY。
在示波器上查看时、SCL 会一直处于低电平(如 OP)。 一段时间后、SCL 会保持不变、但不再创建稳定的时钟、这可能会导致虚假状态位。
CH1:SDA、CH2:SCL
如果 3 个或更多线程在 2 个或更多内核上运行、并且每个线程在总线上连续读取或写入、则会出现此问题。
驱动程序会对访问进行串行化处理、以确保在启动新的传输之前完成一次传输。
是否存在限制交易频率的已知硬件限制? 如果我 在呼叫之间插入一个短暂的延迟、一切都正常工作。
我将再次尝试捕获 SCL、以查看是否能够确定事务中的哪个点发生错误。
谢谢。