我用用VB6的mscomm与托利多仪表通讯
托利多仪表的内容地址是:40001、40002、40003......40026 (可以单字节读取)我想去2号仪表上内容地址为40003的内容 (都为16进制)根据MODBUS-RTU协议 如下:
从站地址 :02H
功能码:03H
起始地址高位:??
起始地址低位:??
寄存器数高位:??
寄存器数低位:??
校验和CRC:请问 起始地址高位、起始地址低位、寄存器数高位、寄存器数低位分别应该是多少啊?
托利多仪表的内容地址是:40001、40002、40003......40026 (可以单字节读取)我想去2号仪表上内容地址为40003的内容 (都为16进制)根据MODBUS-RTU协议 如下:
从站地址 :02H
功能码:03H
起始地址高位:??
起始地址低位:??
寄存器数高位:??
寄存器数低位:??
校验和CRC:请问 起始地址高位、起始地址低位、寄存器数高位、寄存器数低位分别应该是多少啊?
4XXXX的地址功能码好象是4吧(我记得Modbus地址表示是 功能码+高字节+低字节)
40003
从站地址 :02H
功能码:04H --40003中的"4"
起始地址高位:00H --4"00"03 中的"00"
起始地址低位:03H -- 400"03"中的"03"
寄存器数量高位:00H --读一个数据,所以是0001 取高位"00"
寄存器数量低位:01H --低位"01"
CRC高位:XXH
CRC低位:XXH
40003
从站地址 :02H
功能码:04H --40003中的"4"
起始地址高位:00H --40003 中的00
起始地址低位:03H -- 40003中的03
寄存器数量高位:00H --读一个数据,所以是0001 取高位"00"
寄存器数量低位:01H --0001低位"01"
CRC低字节:XXH
CRC高字节:XXH
功能码:03H
起始地址高位:00
起始地址低位:03
寄存器数高位:00
寄存器数低位:01
校验和CRC:
CRC高字节:XXH到底是地位在前还是高位在前啊
2.40049.1应该指的是40049地址的第1位吧,直接写&H01(二进制000000010,不知道是置1清零还是置0清零,如果是置零就试试11111101,也有可能该字节其他位有别的含义和作用,那就要看具体协议定义了),试试看,这个得看具体协议了。