MODBUS RTU模式读卡器,型号IC-10MR、ID-07MR,使用寄存器为保持寄存器,可读可写,支持功能码03、06 、10(十六进制)。使用功能码数据格式如下:
1.03功能码读取保持寄存器
读取从站(读卡器)保持寄存器(4X类型)的二进制数据,不支持广播。
发送报文要规定需要读取保持寄存器的起始地址,寄存器的数量,保持寄存器寻址起始地址为 000H,即寄存器1-16所对应的地址分别为000H-0015H。
如需从站号为2的读卡器上读取卡号,因存卡号寄存器为1-2,所以发送数据格式如下:
站号
|
功能码
|
起始地址
|
地址个数
|
检验码CRC16
|
02H
|
03H
|
0000H
|
0002H
|
C438
|
响应03功能码
响应信息中的寄存器数据为二进制数据,每个寄存器分别对应2个字节,第一个字节为高位数据,第 二个字节为低位数据。
如读取卡号寄存器后,响应的数据格式如下:
站号
|
功能码
|
数据字节长度
|
起始地址
|
地址个数
|
检验码
|
02H
|
03H
|
0004H
|
9A0AH
|
E458H
|
8D13
|
2. 06功能码写单个寄存器
把一个值写到一个保存寄存器(4X类型)中,广播时,写值到所有从站的相同寄存器中。
发送信息要规定写值的寄存器类型,寄存器寻址起始地址为000H,寄存器1所对应的地址为0000H。
如需驱动站号为2的读卡器发出长鸣一声,因驱动响声蜂鸣器寄存器为0005H,所以发送数据格式如 下:
站号
|
功能码
|
起始地址
|
写入数据
|
检验码(CRC16)
|
02H
|
06H
|
0004H
|
0004H
|
C9FB
|
正常响应06功能码写值驱动发声是在寄存器值改变以后将接收到的数据传送回去:
站号
|
功能码
|
起始地址
|
写入数据
|
检验码(CRC16)
|
02H
|
06H
|
0004H
|
0004H
|
C9FB
|
3.功能码10写多个寄存器
把数据按顺序写到各(4X)类型寄存器中,广播时,可把数据写到所有从站的相同类型的寄存 器中。
如需清零站号为2的读卡器的卡号寄存器,因卡号寄存器为1-2,所以发送数据格式如下:
站号
|
功能码
|
起始地址
|
地址个数
|
数据长度
|
数据内容
|
检验码
|
02H
|
10H
|
0000H
|
0002H
|
04H
|
0000H
|
000H
|
FCEB
|
正常响应10功能码写值清零卡号寄存器是在寄存器值改变以后将接收到的数据传送回去:
站号
|
功能码
|
起始地址
|
地址个数
|
检验码(CRC16)
|
02H
|
06H
|
0000H
|
0002H
|
C9FB
|
文章编辑:王先生 → 如有疑问,请联系:13660280281,QQ:3165256411
|