MCU+CH582F,串口收發(fā)問(wèn)題

波特率115200,MCU串口發(fā)送18個(gè)字節(jié)數(shù)據(jù),CH582中斷接收,7字節(jié)觸發(fā),UART_II_RECV_RDY里只接收到了前面7個(gè)字節(jié),中間7字節(jié)沒(méi)有接收,剩下數(shù)據(jù)在UART_II_RECV_TOUT里有接收到,就是中間的7字節(jié)數(shù)據(jù)沒(méi)有接收到,想問(wèn)一下是什么原因?qū)е碌模?/p>


熱門(mén)產(chǎn)品 : USB3.0 HUB控制器:CH634

中斷中UART1_RecvByte讀取fifo中字節(jié)數(shù)據(jù)后,不是會(huì)自動(dòng)清除fifo對(duì)應(yīng)字節(jié)數(shù)據(jù)嗎,為什么讀出來(lái)的數(shù)據(jù)都是重復(fù)相同的?


icon_rar.gifCompoundDev.rar

您好,有時(shí)間幫忙看看是哪出了問(wèn)題嗎?


可能是,代碼收到數(shù)據(jù)之后存放在了RxBuff,但是下一次過(guò)來(lái)接收數(shù)據(jù),RxBuff的數(shù)據(jù)又被覆蓋了,所以表現(xiàn)出來(lái)在RDY的數(shù)據(jù)是最后一次進(jìn)入的數(shù)據(jù)。

需要將RxBuff保存的數(shù)據(jù)進(jìn)行移位,防止覆蓋?;蛘咧苯邮褂美淌盏綌?shù)據(jù)后將數(shù)據(jù)直接發(fā)送出去,判斷是否接收數(shù)據(jù)完整。

代碼里面的len作為全局變量使用到的地方太多,如果不是特意這樣寫(xiě),建議換一個(gè)參數(shù)。


謝謝,解決了,有些變量邏輯沒(méi)處理好


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

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