RS485通讯协议
(1) RS485通讯接口,异步半双工模式。
(2) 通讯波特率4800、9600、19200bps 可设置,出厂默认值为9600 bps。
(3) 数据格式:N,8,1无校验位、8个数据位、1个停止位。
(4)仪表地址:1~255可设置;默认出厂设备地址为10。
本机目前支持01H、02H、03H、04H读命令,
01H、02H、04H读命令功能相同,发送和返回除功能码不同,其他都相同;
03H功能码数据特殊,下面分别说明
报文格式说明:
命令:读命令
主机请求:
地址 + 命令 + 数据地址 + 数据长度 + CRC校验码
1byte + 1byte + 2byte + 2byte + 2byte
地址:为所要查询仪表地址码,可以在 1~255内设置,占用 1个字节
命令: 读命令,长度为 1个字节
数据地址:欲读取的数据起始地址,占用 2个字节数据长度:欲读取的数据字长度
CRC16校验码:低8位在前,高8位在后,占用2个字节
从机响应:
地址 + 命令 + 数据长度 + 数据信息 + CRC校验码
1byte + 1byte + 1byte + nbyte + 2byte
地址:为响应仪表地址码,长度为 1个字节
命令:长度为 1个字节
数据长度:将要发送的数据字节长度
数据信息:读取的数据,具体见仪表参数地址表
CRC16校验码:占用2个字节,低8位在前,高8位在后
通信协议举例:
(1) 读数据寄存器(功能代码01H):读烟感状态,仪表地址为10,举例说明。烟感正常;
主机读数据帧:
地址 |
命令 |
起始地址(高位在前) |
寄存器数(高位在前) |
校验码(低位在前) |
0AH |
01H |
00H,00H |
00H,01H |
FCH,B1H |
仪表回应数据帧:烟感正常
地址 |
命令 |
数据长度 |
数据段1个字节为烟感数据 |
校验码 |
0AH |
01H |
01H |
00H, |
53H,ACH |
仪表回应数据帧:烟感报警
地址 |
命令 |
数据长度 |
数据段1个字节为烟感数据 |
校验码 |
0AH |
01H |
01H |
01H, |
92H,6CH |
其中返回数据的第3个字节为烟感有效数据位。如果为00,则烟感正常,01为烟感报警。
(2) 读数据寄存器(功能代码02H):读烟感状态,仪表地址为10,举例说明。烟感正常;
主机读数据帧:
地址 |
命令 |
起始地址(高位在前) |
寄存器数(高位在前) |
校验码(低位在前) |
0AH |
02H |
00H,00H |
00H,01H |
B8H,B1H |
仪表回应数据帧:烟感正常
地址 |
命令 |
数据长度 |
数据段1个字节为烟感数据 |
校验码 |
0AH |
02H |
01H |
00H, |
A3H,ACH |
仪表回应数据帧:烟感报警
地址 |
命令 |
数据长度 |
数据段1个字节为烟感数据 |
校验码 |
0AH |
02H |
01H |
01H, |
62H,6CH |