日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

C#串口通信——协议格式

發布時間:2023/12/18 C# 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C#串口通信——协议格式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

轉自:https://www.cnblogs.com/fyhui/articles/2477733.html

?

串口通信之協議格式

緩存收到的所有數據,找到一條完整數據,分析數據,界面通知。

?

信令格式:

同步頭?+?數據正文?+?同步尾

同步頭?+?命令字?+?數據長度?+?數據正文?+?同步尾

同步頭?+?地址碼?+?命令字?+?數據長度?+?數據正文?+?同步尾

?

同步頭?+?數據正文?+?校驗碼

同步頭?+?命令字?+?數據長度?+?數據正文?+?校驗碼

同步頭?+?地址碼?+?命令字?+?數據長度?+?數據正文?+?校驗碼

?

  文本格式可以直觀的定義回車換行是協議的結尾,所以我們可以省略數據長度,增加協議尾。即:協議頭?+?數據?+?校驗?+?數據尾

  

  一般情況下,同步頭2B,地址碼1B,命令字1B,數據長度1B,數據正文nB,同步尾2B,校驗碼2B。

?

  信令的格式為了3個目的:a>符合業務需求;b>方便識別一條完整的數據;c>進一步驗證數據,如有需要進行數據還原。

??????   地址碼、命令字為了目的a;

??????   同步頭、數據長度、同步尾、校驗碼為了目的b;

??????   校驗碼為了目的c。

?

建議:

1>??? 盡量采用數據內容不會出現的字符作為同步頭尾。比如數據用BCD碼,則同步頭可以用A-E,如5E;

2>??? 如果同步頭尾字符可能會在數據正文出現,則可能要用轉義符,當然同步頭+數據長度+同步尾3個條件同時成立的正文數據出現概率應該非      ?????? 常非常低;

3>??? 如果數據較短,請使用校驗碼進一步驗證數據的正確性;

4>??? 如果正確性要求特別高,請采用校驗碼還原可能的錯誤數據,如果校驗碼不能完成數據還原,請重發信令請求以保證正確。

總結

以上是生活随笔為你收集整理的C#串口通信——协议格式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。