- 我使用的是ch32v303
- 異常原因一般是環(huán)境干擾導致i2c總線狀態(tài)錯誤,無法繼續(xù)通信
熱門產(chǎn)品 :
CH397: 高集成度、低功耗USB網(wǎng)卡芯片
- 我使用的是ch32v303
- 異常原因一般是環(huán)境干擾導致i2c總線狀態(tài)錯誤,無法繼續(xù)通信
你好,異常之后主機端要STOP總線,重新開始Start才可以釋放總線(sda,scl都為高電平)。
你好,問題不能解決
出現(xiàn)異常后,調I2C_GenerateSTOP后,I2C_FLAG_BUSY仍然為Set
將SCL短時間接地很容易復現(xiàn)這個問題
你好,如果你調用I2C_GenerateSTOP后,總線還不釋放,那就是你的從機拉低了SDA線,將從機的SDA斷開再量主機的SDA線,或者想辦法讓從機復位釋放SDA線就行了。
你好,多謝回復。我嘗試用邏輯分析儀抓總線數(shù)據(jù),如上圖
從機沒有拉低SDA
調用I2C_GenerateSTOP()沒有產(chǎn)生STOP,是否調用前有其他要求?
目前我通過重新初始化流程可以恢復總線。不過還是想了解下更輕量的處理方法。