简介
西门子 CRC 校验程序是一种经过验证的、强大的工具,可用于确保数据在传输过程中保持完整和可靠。CRC(循环冗余校验)算法是一个数学公式,可生成一个称为 CRC 值的数字,该值与数据包一起传输。接收端使用相同的 CRC 算法对接收到的数据进行计算,并将结果与传来的 CRC 值进行比较。如果两个 CRC 值匹配,则表示数据在传输过程中没有发生损坏。原理
CRC 校验程序基于多项式除法原理。数据被视为除数,而 CRC 生成器多项式是除数。除法过程产生一个余数,该余数就是 CRC 值。如果数据在传输过程中发生更改,则接收端计算的 CRC 值将与传来的 CRC 值不匹配,从而指示数据存在错误。优点
使用西门子 CRC 校验程序有以下优点:应用程序
西门子 CRC 校验程序可用于以下应用程序:西门子 CRC 校验程序の特徴
西门子 CRC 校验程序提供以下特征:结论
西门子 CRC 校验程序是一个功能强大且可靠的工具,可确保数据在传输和存储期间保持完整和准确。其高度可靠、速度快和易于实施的特性使其成为各种行业的理想选择。通过利用西门子 CRC 校验程序,组织可以提高数据传输和存储的可靠性,并降低因数据损坏或丢失造成的风险。如需有关西门子 CRC 校验程序的更多信息,请访问 西门子支持网站 。
请问怎么用梯形图编crc的校验程序,不用其他软件计算,希望给个实例 (s7-200的plc)
随着计算机技术的不断发展,在现代工业中,利用微机进行数据通讯的工业控制应用得也越来越广泛。 由于传输距离、现场状况等诸多可能出现的因素影响,计算机与受控设备之间的通讯数据常会发生无法预测的错误。 为了防止错误所带来的影响,一般在通讯时采取数据校验的办法,而循环冗余码校验是最常用的校验方法之一。 一、 循环冗余码校验原理循环冗余码校验英文名称为Cyclical Redundancy Check,简称CRC。 它是利用除法及余数的原理来作错误侦测(Error Detecting)的。 实际应用时,发送装置计算出CRC值并随数据一同发送给接收装置,接收装置对收到的数据重新计算CRC并与收到的CRC相比较,若两个CRC值不同,则说明数据通讯出现错误。 根据应用环境与习惯的不同,CRC又可分为以下几种标准:CRC-12码通常用来传送6-bit字符串。 CRC-16及CRC-CCITT码则用是来传送8-bit字符,其中CRC-16为美国采用,而CRC-CCITT为欧洲国家所采用。 CRC-32码大都被采用在一种称为Point-to-Point的同步传输中。 下面以最常用的CRC-16为例来说明其生成过程。 CRC-16码由两个字节构成,在开始时CRC寄存器的每一位都预置为1,然后把CRC寄存器与8-bit的数据进行异或,之后对CRC寄存器从高到低进行移位,在最高位(MSB)的位置补零,而最低位(LSB,移位后已经被移出CRC寄存器)如果为1,则把寄存器与预定义的多项式码进行异或,否则如果LSB为零,则无需进行异或。 重复上述的由高至低的移位8次,第一个8-bit数据处理完毕,用此时CRC寄存器的值与下一个8-bit数据异或并进行如前一个数据似的8次移位。 所有的字符处理完成后CRC寄存器内的值即为最终的CRC值。 下面为CRC的计算过程:1.设置CRC寄存器,并给其赋值FFFF(hex)。 2.将数据的第一个8-bit字符与16位CRC寄存器的低8位进行异或,并把结果存入CRC寄存器。 3.CRC寄存器向右移一位,MSB补零,移出并检查LSB。 4.如果LSB为0,重复第三步;若LSB为1,CRC寄存器与多项式码相异或。 5.重复第3与第4步直到8次移位全部完成。 此时一个8-bit数据处理完毕。 6.重复第2至第5步直到所有数据全部处理完成。 7.最终CRC寄存器的内容即为CRC值。 二、 循环冗余码校验程序的编写明白了CRC校验码的产生过程,编写起程序来就非常容易了。 由于Visual Basic的广泛普及以及其在数据通讯中的重要地位,下面就以VB语言来编写CRC的生成程序,其它语言只需稍做修改即可。 编写CRC校验程序有两种办法:一种为计算法,一种为查表法。 下面对两种方法分别讨论。 1.计算法计算法就是依据CRC校验码的产生原理来设计程序。 其优点是模块代码少,修改灵活,可移植性好。 其缺点为计算量大。 为了便于理解,这里假定了三位数据,而多项式码为A001(hex)。 在窗体上放置一命令按钮Command1,并添加如下代码:Private Sub Command1_Click() Dim CRC() As Byte Dim d() As Byte 待传输数据 ReDim d(2) As Byte d(0) = 123
本文原创来源:电气TV网,欢迎收藏本网址,收藏不迷路哦!
添加新评论