CH582的I2C會(huì)卡住程序,感覺是一直進(jìn)中斷了,求解決方案

1731461070026.png

仿真時(shí),發(fā)現(xiàn)i2c的寫會(huì)一直卡在I2C_ITConfig(I2C_IT_ERR, ENABLE),單步也跳不出去,該如何解決

函數(shù)里沒有寫死循環(huán)判斷,正常運(yùn)行不會(huì)卡在這里面。

比對測試一下,用USB/串口燒錄,不跑仿真能正常運(yùn)行嗎?

如果可以運(yùn)行,與SWD有關(guān),檢查SWD的各項(xiàng)配置。

如果還是無法運(yùn)行,排查是否有其他外設(shè)異常。

image.png


I2C是直接用的例程代碼。

現(xiàn)在I2C和一個(gè)PD芯片通信,PD芯片的typeC口與USB線碰到的時(shí)候有概率程序會(huì)死掉,正因?yàn)橛羞@個(gè)問題才會(huì)去仿真,仿真的結(jié)果就是卡在下面紅線畫圈的地方,此時(shí)無論單步跳入還是其他什么辦法,都無法繼續(xù)往下走。

如果我把I2C取消掉,typeC口與USB線無論怎么碰,都不會(huì)死掉,只有開了I2C才會(huì)這樣。我嘗試使用窗口看門狗試圖關(guān)閉I2C,窗口看門狗好像也就最多發(fā)揮一次作用,不能穩(wěn)定重啟。

QQ20241113-111620.png


已解決


只有登錄才能回復(fù),可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频