AABB 通讯契约是一种非典型自定义协议, 相较于 MODBUS 通讯协议,布局更浅易,指令禀赋格式更简单,便于实行速快测试。 AABB 通讯同意扶植单寄存器读写两种指令。
指令头: 固定为 16 进制 AABB所在码: 筑设的所在(1~255, 个中地点 255 为通用所在)存放器地方:要探望的寄放器所在, 寄存器地方字节最高位是读写信号位,为 0 时呈现读存放器,为 1时显示写寄存器。和校验: 之前所有数据之和, 0xAA+0xBB+地方码+寄存器地点, 校验和抢先 255 时,仅使用低字节。 如下例中,校验和=0xAA+0xBB+0x01+0x08=0x016E,则只使用 0x6E 行为结尾和校验码。例:读取地方为 0x01 的开办存放器值,存放器地址为 8主机发送指令: 0xAA 0xBB 0x01 0x08 0x6E从机返回应答: 0xAA 0xBB 0x01 0x08 0x00 0x60 0xCE(2) 点窜单个寄放器
写存放器指令中,寄存器地址字节的最高位应为 1, 即所在值与 0x80 做“或” 运算。例: 编削所在为 0x01 的成立存放器值,寄放器地方为 8,编削值为 100主机发送指令: 0xAA 0xBB 0x01 0x88 0x00 0x64 0x52从机返回应答: 0xAA 0xBB 0x01 0x08 0x00 0x64 0xD2(3) 通用修设地点AABB 通讯协议援助通用地址, 不论兴办的面前地方为何值,欺骗 0xFF 手脚地点对其发送读写指令,均可取得凿凿反映。例:欺骗通用地方,读取任一开发的寄存器 8主机发送指令: 0xAA 0xBB 0xFF 0x08 0x6C从机返回应答: 0xAA 0xBB 0x01 0x08 0x00 0xC8 0x36注: 当总线上联络有多个从机设备时(平时为 RS485 总线), 行使通用所在时总线上统统创办均会响应指令,导致指令无法平常操纵。注:严禁在维系有多个从成立的总线中诈骗通用地址窜改筑立地址。(4)绝顶创造地点创立所在留存于存放器 ADDR.[7:0], 取值限定为 1~255,这些地方中, 255 在 AABB 同意中行为通用地方利用。