上海安标电子有限公司
——PC39A接地电阻仪通信协议
通信协议:
波特率:9600数据位:8校验位:无停止位:1
上位机(计算机):
字节号 1 2 3 4 5 6 7 8
意义ID Command 数据地址V alue CRC
注:1 ID:1个字节,由单机来定(0~255)
2 Command:1个字节,读:3或4,写:6
3 数据地址:2个字节,寄存器地址,读从100开始,写从200开始
4 V alue:2个字节,读:个数(以整型为单位),写:命令/ 数据(以整型为单位)
5 CRC:计算出CRC
下位机(PC39A):
读数据,若正确
字节号 1 2 3 3+N (N=个数*2) 3+N+1 3+N+2 意义ID Command=3 / 4 数据个数数据CRC 注:1 ID:1个字节,由单机来定(0~255)
2 Command:1个字节,收到的上位机命令
3数据个数:1个字节,返回数据个数(以字节为单位)
4 V alue:N个字节,是返回上位机的数据
5 CRC:计算出CRC
写命令,若正确
返回收到的数据:
若错误
字节号 1 2 3 4 5
意义ID Command 数据CRC
注:1 ID:1个字节,由单机来定(0~255)
2 Command:1个字节,收到的上位机命令或上0x80,
如收到3,返回0x83
3数据:1个字节,错误的指令
错误指令
1:表示command不存在
2:表示数据地址超限
4 CRC:计算出CRC
例如读PC39A 电流数据:
机器地址为12,电流的数据地址100,数据为15.45(A) (一个整型数据) 主机:
ID Command 数据地址 V alue CRC
16进制 0x0c 0x03 0x0064 0x0001 CRC_H CRC_L 10进制 12
3
100
1
CRC_H
CRC_L
从机返回 如正确:
ID Command 数据个数(以字节为单位)
V alue CRC
16进制 0x0c 0x03 0x002 0x0609 CRC_H CRC_L 10进制 12 3
2
1545
CRC_H
CRC_L
如错误:
ID Command 数据 CRC
16进制 0x0c 0x83 0x02 CRC_H CRC_L 10进制
12
131
2
CRC_H
CRC_L
例如发PC39A 启动命令:
机器地址为12,命令的地址200,数据为25000(25000表示启动) 主机:
ID Command 数据地址 V alue CRC
16进制 0x0c 0x06 0x00c8 0x61a8 CRC_H CRC_L 10进制 12
6
200
25000
CRC_H
CRC_L
从机返回 如正确:
ID Command 数据地址 V alue CRC
16进制 0x0c 0x06 0x00c8 0x61a8 CRC_H CRC_L 10进制 12
6
200
25000
CRC_H
CRC_L
如错误:
ID Command 数据 CRC
16进制 0x0c 0x86 0x02 CRC_H CRC_L 10进制 12
134
2
CRC_H
CRC_L
0011
10000110
错误码0x83
功能码0x06错误码0x86