CRC是校验错误最有效的系统之–。CRC由产生于发送装置的两个校验字符组成,这两个字符加在被发送数据结尾。用相同的方法,接收装置对于接受的数据产生自身的CRC,并把它和发送器产生的CRC进行比较,确保数据正确发送。在这一-节里不做CRC的完整的数学推导。有关这方面的内容可在很多关于数据通讯的文章中查找。在计算CRC中应该理解的基本步骤如下:CRC里的位数乘上组成信息的数据位数。
n结果除以生成的多项式(使用无进位求2的摸数方法),余数就是CRC.忽视商,把余数(CRC)加进数据位,把该信息和CRC一起发送。接收装置用该信息加上CRC去除以生成的多项式,如果余数是0,发送就是无错误发送。一个生成多项式用X幂的代数和表示,如X*+X°+X°(或1),这个多项式转换成二进制数就是1101。只要发送装置和接收装置使用相同的值,-一个生成多项式可以是任意长,包含任何1或0的形式。几个已经展开的标准生成多项式最适合错误检测。RTU协议用多项式X*+X*+X2+1,用二进制表示就是1 1000 0000 0000 0101。这个多项式生成的CRC就是众所周知的CRC-16.
Giddings & Lewis RS232 Interface 502-02833-20 -DI-
GIDDINGS & LEWIS 502-03214-00 NSPP 5020321400
Giddings&Lewis 502-02080-00 DECADE Counter – Used