讀寫型記憶體雙Register寫入指令(30)
大數字 讀寫不同格式(float32/ int64)會有1/10k 以下的差異。
限使用在 Register 長度為 4 的記憶體,請參考列表。
指令範例
控制端發指令(30)格式
Byte# | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
Node ID | Slave Address | Function Code | 寫入的記憶體地址 | 寫入的記憶體地址 | 寫入資料 | 寫入資料 | 寫入資料 | 寫入資料 | CRC | CRC |
範例內容01~FF | 01 | 30 | 00 | 15 | 00 | 00 | 00 | 00 | BC | 07 |
控制端發訊範例說明
這個範例會改變 A18 Low Flow Cutoff 數值變成0(預設)
slave address: 01(本流量計地址)
function code: 30(雙Register寫入指令)
讀取數據的啟始地址: 00 15(要寫入A18 Low Flow Cutoff 記憶體地址)
寫入資料: 00 00 00 00(改變A18 Low Flow Cutoff 數值變成 0)
CRC: BC 07(依 CRC 算法計算出的糾錯碼)
流量計回覆(30)格式
Byte# | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
Node ID | Slave Address | Function Code | 寫入的記憶體地址 | 寫入的記憶體地址 | 寫入資料 | 寫入資料 | 寫入資料 | 寫入資料 | CRC | CRC |
範例內容01~FF | 01 | 30 | 00 | 15 | 00 | 00 | 00 | 00 | BC | 07 |
流量計回覆範例說明
寫入指令符合格式,會將收到的控制端指令回傳給 Master
slave address: 01(本流量計地址)
function code: 30(雙Register寫入指令)
讀取數據的啟始地址: 00 15(要讀入A18 Low Flow Cutoff 記憶體地址)
寫入資料: 00 00 00 00(改變 A18 Low Flow Cutoff 數值變成 0)
CRC: BC 07(依 CRC 算法計算出的糾錯碼)
Last updated