这个是Modbus RTU CRC16,套用的多项式为X16+X15+X2+1
算法为:将初始数据设置为FFFF,然后,将第一个数据H05与初始数据做异或,结果保存在CRC寄存器中。
将CRC中的数据右移,直到Flag位为1,将结果与多项式进行异或,保存在CRC寄存器,然后CRC寄存器中的数据继续右移,直到Flag为1,然后继续上面这一步,直到第一个数据处理完毕。此时,装入第二个数据,继续上述过程,直到所有的数据处理完毕。
你的这个如果使用手工计算的话,大约要计算61步,其中还要确保你不被转晕掉。用Execl画表格计算会更快一点,当然,你也可以去下载计算器来计算。
Regards