01 讀線圈狀態
讀取從機的線圈狀態(ON/OFF),位操作。
例:請求從機設備17讀00020-00056線圈。其中00020-00056爲線圈的寄存器信息地址,這些線圈的寄存器尋址地址爲0019 – 0055,共訪問37個線圈。
描述 | Hex |
---|---|
從機地址 | 11 |
功能碼 | 01 |
寄存器起始地址(高) | 00 |
寄存器起始地址(低) | 13 |
寄存器數量(高) | 00 |
寄存器數量(低) | 14 |
CRC校驗(高) | |
CRC校驗(低) |
響應:響應信息中的各線圈的狀態與數據區的每一位的值相對應,1代表ON;0代表OFF。若返回的線圈數不是8的倍數,則在最後的數據字節未使用的位中全部填充0,字節數區說明全部數據的字節數。
描述 | Hex |
---|---|
從機地址 | 11 |
功能碼 | 01 |
返回字節數 | 05 |
數據1(線圈00027-線圈00020) | CD |
數據2(線圈00035-線圈00028) | 6B |
數據3(線圈00043-線圈00036) | B2 |
數據4(線圈00051-線圈00044) | 0E |
數據5(線圈00056-線圈00052) | 1B |
CRC校驗(高) | |
CRC校驗(低) |
02 讀輸入位狀態
讀取從機的輸入狀態(ON/OFF),位操作。
用法同上
03 讀保持寄存器
讀取從機的保持寄存器,一個寄存器兩個字節,字操作。
例:請求從機設備17的0x13,0x14,0x15三個寄存器的數據
描述 | Hex |
---|---|
從機地址 | 11 |
功能碼 | 03 |
寄存器起始地址(高) | 00 |
寄存器起始地址(低) | 13 |
寄存器數量(高) | 00 |
寄存器數量(低) | 03 |
CRC校驗(高) | |
CRC校驗(低) |
響應:
描述 | Hex |
---|---|
從機地址 | 11 |
功能碼 | 03 |
返回字節數 | 06 |
數據1(寄存器0x13高位) | CD |
數據1(寄存器0x13高位) | 6B |
數據2(寄存器0x14高位) | 6B |
數據2(寄存器0x14高位) | 6B |
數據3(寄存器0x15高位) | 6B |
數據3(寄存器0x15高位) | 6B |
CRC校驗(高) | |
CRC校驗(低) |
04 讀輸入寄存器
讀取從機的輸入寄存器,一個寄存器兩個字節,字操作。
用法同上
05 寫單個線圈
ff00h爲寫1,0000h爲寫0。
例:把地址爲0的線圈寫1
描述 | Hex |
---|---|
從機地址 | 11 |
功能碼 | 05 |
寄存器起始地址(高) | 00 |
寄存器起始地址(低) | 00 |
線圈值(高) | ff |
線圈值(低) | 00 |
CRC校驗(高) | |
CRC校驗(低) |
響應:
描述 | Hex |
---|---|
從機地址 | 11 |
功能碼 | 05 |
寄存器起始地址(高) | 00 |
寄存器起始地址(低) | 00 |
線圈值(高) | ff |
線圈值(低) | 00 |
CRC校驗(高) | |
CRC校驗(低) |
06 寫單個保持寄存器
寫從機的保持寄存器,一個寄存器兩個字節,字操作。
例:往地址爲0的寄存器寫1
描述 | Hex |
---|---|
從機地址 | 11 |
功能碼 | 06 |
寄存器起始地址(高) | 00 |
寄存器起始地址(低) | 00 |
寄存器值(高) | 00 |
寄存器值(低) | 01 |
CRC校驗(高) | |
CRC校驗(低) |
響應:
描述 | Hex |
---|---|
從機地址 | 11 |
功能碼 | 06 |
寄存器起始地址(高) | 00 |
寄存器起始地址(低) | 00 |
寄存器值(高) | 00 |
寄存器值(低) | 01 |
CRC校驗(高) | |
CRC校驗(低) |
15 寫多個線圈
寫從機的多個線圈,位操作。
例:請求從機設備17寫00020-00030線圈,未使用位補0。
描述 | Hex |
---|---|
從機地址 | 11 |
功能碼 | 0f |
寄存器起始地址(高) | 00 |
寄存器起始地址(低) | 13 |
寄存器數量(高) | 00 |
寄存器數量(低) | 0a |
數據1(線圈27-20) | 00 |
數據2(線圈29-28) | 00 |
CRC校驗(高) | |
CRC校驗(低) |
響應:
描述 | Hex |
---|---|
從機地址 | 11 |
功能碼 | 0f |
寄存器起始地址(高) | 00 |
寄存器起始地址(低) | 13 |
寄存器數量(高) | 00 |
寄存器數量(低) | 0a |
字節數 | 02 |
CRC校驗(高) | |
CRC校驗(低) |
16 寫多個保持寄存器
寫從機的保持寄存器,一個寄存器兩個字節,字操作。
例:往地址0x13,0x14的寄存器寫值
描述 | Hex |
---|---|
從機地址 | 11 |
功能碼 | 10 |
寄存器起始地址(高) | 00 |
寄存器起始地址(低) | 13 |
寄存器數量(高) | 00 |
寄存器數量(低) | 02 |
字節數 | 04 |
數據1(高位) | 00 |
數據1(低位) | 00 |
數據2(高位) | 00 |
數據2(低位) | 00 |
CRC校驗(高) | |
CRC校驗(低) |
響應:
描述 | Hex |
---|---|
從機地址 | 11 |
功能碼 | 10 |
寄存器起始地址(高) | 00 |
寄存器起始地址(低) | 13 |
寄存器數量(高) | 00 |
寄存器數量(低) | 02 |
CRC校驗(高) | |
CRC校驗(低) |