ModeBusRTU调试工具CRC16版。经过验证,其所生的CRC16校验码与知名软件Modbus Pull生成的是一至的。
1.支持任意数组串的CRC16码生成;
只要您对Modbus通讯协议的数据格式有所了解,就能用该款软件生成任意的带CRC16码的十六制字串。所生成的CRC16码与Modbus Pull软件生成的是一至的。
2.支持实时调试;
数据组生成后,可以实时的通过串口进行发送对您所设计的硬件进行调试,无需再开其他的串口调试
帮助说明
1.1. 在"目标字串"框内填写您要计算CRC16码的字串,当光标离开该框时程序即计算相应的CRC16码并自 动填写到"计算结果"框内;
1.2. 当通过手动或自动发送时,将根据设置把"计算结果"框内的字串以16进制的形式通过串口进行发送;
1.3. "发送间隔时间"是以ms为单位,这个参数只对自动发送有效;
1.4. "预接收字节数"是指您发送生成指令后,下位机应该返回的字节数,当这个数字填写成0时,程序将根据功能号自动计算返回的字节数;
算法描述
2.1.置16位寄存器为全1,作为CRC寄存器。
2.2.把一个8位数据与16位CRC寄存器的低字节相异或,把结果放于CRC寄存器中。
2.3.把寄存器的内容右移一位(朝低位),用0填补最高位,检查最低位(移出位)。
2.4.如果最低位为0,重复2.3(再移位);如果最低位为1,CRC寄存器与多项式A001H(1010 0000 0000 0001)进行异或。
2.5.重复2.3、2.4,直到右移8次,这样整个8位数据全部进行了处理。
2.6.重复2.2-2.5,进行下一个8位数据的处理。
2.7.将一帧的所有数据字节处理完后得到CRC-16寄存器。
2.8.将CRC-16寄存器的低字节和高字节交换,得到的值即为CRC-16码。