帧格式与寄存器
根据所使能的脚本不同,数据帧支持以下格式。寄存器号目前支持 1~64(内容寄存器)。
简易格式(getString_reg.lua)
$$xxx[Rn]xxx\r\n$$
| 字段 | 说明 |
|---|---|
xxx | 传输数据 |
[Rn] | 寄存器号标识,n 为寄存器号 |
\r\n | 结束帧 |
示例: hello[1]world\r\n — 将 helloworld 数据传入 1 号寄存器
JSON 格式
单个寄存器(getString_json.lua)
$${regNum=n,content="xxx"}\r\n$$
| 字段 | 说明 |
|---|---|
regNum | 寄存器号(1~64) |
content | 传输数据,非数字需加引号,即 content="xxx" |
\r\n | 结束帧 |
示例: {regNum=1,content="hello"}\r\n
多个寄存器(getString_multi_json.lua)— 推荐
$${regNum=n,content="xxx"}{regNum=n,content="xxx"}...\r\n$$
{} 为一段完整数据的标识,可在一帧内同时写入多个寄存器。
示例: {regNum=1,content="100"}{regNum=2,content="A002"}\r\n
特殊符号兼容格式(getOpMsg.lua)
当传输数据包含 {} " ^ % 等特殊字符时,JSON 格式会将它们识别为语法标识,此时应使用本格式,以 | 作为寄存器分隔符。
$$01内容1!@#$%^|11内容2|12内容3\r\n$$
| 字段 | 说明 |
|---|---|
01 | 寄存器号(10109 两位表示) |
内容1!@#$%^ | 包含特殊符号的传输数据 |
| | 寄存器分隔标识 |
\r\n | 结束帧 |
如果
|本身也需要作为传输内容,分隔符会更新为其他标识,具体以脚本版本说明为准。