IOT 自定義通訊協議
阿新 • • 發佈:2019-01-11
裝置型別(1位元組) |
裝置廠商(1位元組) |
協議版本號(8位元組) |
命令碼(1位元組) |
幀序號(4位元組) |
傳送接收標識(1位元組)) |
資料包長度(2位元組,高位元組在前,低位元組在後) |
【資料部分(N位元組)】 |
CRCL(1位元組) |
CRCH(1位元組) |
- 裝置型別:用1位元組表示裝置型別,例如0X01表示物聯網裝置。
- 裝置廠商:表示底層硬體裝置的廠商程式碼,0X01表示某公司。
- 協議版本號:表示當前裝置傳送的資料幀所使用的協議版本,協議版本向下相容。
- 命令碼:表示命令型別,如開鎖命令、上報告警命令等,在後續的具體協議中詳細定義說明。
- 幀序號:從1開始,到0XFFFFFFFF後迴圈從1開始,每一幀加一,應答資料幀要與接收到的請求資料幀幀序號保持一致。
- 傳送接收標識:0XFF-表示傳送請求資料幀,0X00-表示接收應答資料幀。
- 資料包長度:2位元組表示,高位元組在前,低位元組在後。
- 資料部分,【】表示此部分可選,在某些協議中,資料部分預設,資料包長度欄位填寫0X00 0X00不可省略。
- CRC:CRCL,CRCH:採用通用的MODBUS-RTU校驗方式,計算後的CRC值為16bit的整型數,在資料幀中位元組序為低位元組在前,先發,高位元組在後,後發。
常用協議:上報裝置狀態、上報心跳、上報電池電量、上報告警、查詢韌體版本資訊、查詢韌體幀數、獲取升級包、獲取升級結果