上位機和下位機通訊,最好是用協(xié)議或者是自己加一個起始字節(jié)和結(jié)束字節(jié),并開啟兩個或者更多的緩沖區(qū)
中斷中接收的字節(jié)保存在緩沖區(qū)0,當收到一個完整的指令之后,就在中斷中復制到到緩沖區(qū)1
并標志一個接收的標志位之類的,然后清除緩沖區(qū)0的數(shù)據(jù),
最后,在主程序中處理緩沖區(qū)1的指令
而且,如果指令之間間隔時間很短,有可能會錯過指令,這個時候,在中斷中,保存指令數(shù)據(jù)時,就得先查詢上一個接收標志,用來決定放在哪個緩沖區(qū) |