【python中级】MODBUS-RTU通信协议的CRC16循环冗余码校验

【python中级】MODBUS-RTU通信协议的CRC16循环冗余码校验

1、背景

循环冗余码校验(Cyclical Redundancy Check),简称CRC。
它是利用除法及余数的原理来作错误侦测(Error Detecting)的。
实际应用时,发送装置计算出CRC值并随数据一同发送给接收装置,
接收装置对收到的数据重新计算CRC并与收到的CRC相比较,若两个CRC值不同,则说明数据通讯出现错误。

CRC校验,理论上生成多项式G(x)和校验的数据长度n是任意的!
但实际在行业内,规定了各种数据格式生成多项式的国际常用的CRC参数模型。
其中MODBUS-RTU所使用的CRC多项式公式为:
x 16 + x 15 +

猜你喜欢

转载自blog.csdn.net/jn10010537/article/details/131709204