CH579串口接收數據問題

CH579串口接收數據問題超過15字節(jié)就無法接收完全,幫我看看我寫的又錯嗎?

數據長了就接收不到,后面的字節(jié)




1638172591159563.png

1638172591102656.png


建議先排查這些點:

1.你的uart_rxByte函數的運行時間是多少us?

2.你的uart_rxByte是否是中斷安全的,是否在其他地方調用了uart_rxByte。


函數運行時間不應該高過波特率計算出的字節(jié)時間,其他地方調用uart_Rxbyte最好先關中斷。



void uart_rxByte (uint8_t data)
{
??? fifo_in(&s_rxfifo, &data, 1, 1);?? ?
}

這個函數是這樣的就往里面寫數據


UART1_GetLinSTA()應該賦值給i,不然不算一句代碼。

ringbuf就更加不是中斷安全的了,你應該在外部讀取ringbuf的時候關閉中斷。

第二,你本可以直接放好幾個字節(jié),為什么要一個一個放,浪費時間。


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

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