Modbus通訊協(xié)議報(bào)文格式詳解
MODBUS協(xié)議命令格式主要分為Modbus RTU格式和Modbus ASCII格式。下面分別介紹兩種格式的命令格式。
MODBUS協(xié)議命令格式
1、Modbus RTU格式命令格式
Modbus RTU格式是以二進(jìn)制數(shù)據(jù)方式傳輸數(shù)據(jù),通訊速度快。它的命令格式如下:
| 地址碼 | 功能碼 | 數(shù)據(jù) | CRC校驗(yàn)碼 |
說明:
地址碼:指定待通信的設(shè)備地址,可以是廣播地址、單設(shè)備地址或多設(shè)備地址。地址碼占1字節(jié),有效值范圍是1~247。
功能碼:指令類型,詳細(xì)說明程序執(zhí)行的操作是讀取、寫入還是查詢串口通信協(xié)議。功能碼占1字節(jié),有效值范圍是1~255。
數(shù)據(jù):根據(jù)執(zhí)行的命令指令來封裝數(shù)據(jù)內(nèi)容,數(shù)據(jù)長度為多字節(jié)。
CRC校驗(yàn)碼:數(shù)據(jù)傳輸前需要計(jì)算校驗(yàn)和,檢驗(yàn)數(shù)據(jù)是否傳輸正確。CRC校驗(yàn)占2字節(jié)。
MODBUS協(xié)議命令格式
2、Modbus ASCII格式命令格式
Modbus ASCII格式是以ASCII字符方式傳輸數(shù)據(jù)。它的命令格式如下:
| : | 地址碼 | 功能碼 | 數(shù)據(jù) | 校驗(yàn)碼 | 回車 | 換行 |
說明:
“:”:起始符,以冒號(hào)表示;
地址碼:指定待通信的設(shè)備地址,可以是廣播地址、單設(shè)備地址或多設(shè)備地址。地址碼占2個(gè)ASCII字符,有效值范圍是01~FE。
功能碼:指令類型,詳細(xì)說明程序執(zhí)行的操作是讀取、寫入還是查詢。功能碼占2個(gè)ASCII字符,有效值范圍是01~FF。
數(shù)據(jù):根據(jù)執(zhí)行的命令指令來封裝數(shù)據(jù)內(nèi)容,數(shù)據(jù)長度為多字節(jié)。
校驗(yàn)碼:校驗(yàn)數(shù)據(jù)是否傳輸正確,占2個(gè)ASCII字符。
回車:表示數(shù)據(jù)傳輸結(jié)束,以回車符表示。
換行:表示數(shù)據(jù)傳輸結(jié)束,以換行符表示。
文章出自:https://www.toutiao.com/article/7228939424162726457/如有轉(zhuǎn)載本文請聯(lián)系作者【卷皮練習(xí)冊】今日頭條號(hào)。