設備節點:/dev/ttySx 或者 /dev/ttyAMAx
查看配置:sudo stty -F /dev/ttyS0
操作流程
1. 打開設備
2. 設置波特率、數據位、停止位、奇偶校驗位、數據流控制等
3. 設置是否阻塞讀、讀取最少字符數量、等待時間等
4. 讀寫設備
注意:
1. 注意清空讀寫緩衝區
2. 如果讀寫數據頻繁則開啓線程讀取,否則open,read/write後close設備
數據報文
1. 指定報文頭、報文尾
2. 添加數據長度、數據校驗位
3. 報文黏包:根據報文頭、報文尾、數據長度截取數據
4. 報文截斷:
a. 查找報文頭,並從這開始往下查找報文尾
b. 查找報文尾,則數據讀取不完整,存入報文數據緩衝區
c. 再次讀串口時,把讀取到的數據追加到報文數據緩衝區
d. 再對緩衝區內的數據進行處理
e. 當讀取到數據時和上一次讀取到數據時的時間間隔很大,則清空報文數據緩衝區的內容