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.

关于 I2C 总线出现 bus busy 的问题

Other Parts Discussed in Thread: AM4378

AM4378的开发板,在I2C1 总线上加了一个I2C从设备MPU6050,但是通信一段时间就会产生“Arbitration lost”仲裁丢失错误,然户系统就会一直出现  " timeout waiting for bus ready " 这个错误。

芯片手册上说出现仲裁丢失错误有两种情况,一种是真正的仲裁丢失,另一种是"when the I2C attempts to start a transfer while BB (bus busy) is 1.",我I2C总线上只有一个主设备,因此应该是第二种情况。但是I2C在传输的时候已经判断了当前总线为空闲,为什么还会出现这种现象呢?  并且 bus busy 位被置1后,软件复位和软件重启均无法清除,只有断电重启才能清除该标志位。

为什么会出现这种情况?有人之前遇到过么?