海大艺高表协议和数据

广播读表号表数指令: 发送: 0E 0D 0B 03 FF FF FF FF 0B 功能码 返回: 0E 0D 0B 03 FF 01 00 00 F5 功能码 表地址01(十六进制数) 表数0(BCD码)   读取表数: 发送: 0E 0D 0B 02 01 FF FF FF F4 功能码 表地址01 校验和,将前面的所有数据异或后得出的数据即为校验和 返回: 0E 0D 0B 02 01 06 07 00 0A 功能码 表地址01 表数700 校验和,将前面的所有数据异或后得出的数据即为校验和 http://www.ip33.com/bcc.html   修改表地址命令: 发送: 0E 0D 0B 9A 05 FF FF FF 68 0E 0D 0B 9A 05 FF FF FF 68 功能码 功能码 表地址05(十六进制数),该地址为修改后的地址 表地址05(十六进制数),该地址为修改后的地址 该指令为将两条一模一样的修改表号指令发送两遍,即为修改表号,单独发一条,无法完成表号修改。需快速发两遍。   无返回指令。   测试数据: 波特率:1200,偶检验   [09:30:16.384] 0E 0D 0B 03 FF FF FF FF 0B [09:30:16.615] 0E 0D 0B 03 FF 17 07 00 E4 表号:23 表数:700   [09:42:47.286] 0E 0D 0B 02 17 FF FF FF E2 [09:42:47.519] 0E 0D 0B 02 17 06 07 00 1C   [10:18:41.429] 0E 0D 0B 9A 05 FF FF FF 68 0E 0D 0B 9A 05 FF FF FF 68 [10:18:49.167] 0E 0D 0B 03 FF FF FF FF 0B [10:18:49.396] 0E 0D 0B 03 FF 05 07 00 F6 表号变为5 修改表地址成功    
public static byte CalcXor(byte[] bs) {
byte result = 0;
for (byte b : bs) {
result ^= b;
}
return result;
}
   
上一篇:MySQL数据库笔记狂神说笔记详解


下一篇:ASP.NET Core 中的路由约束