您正在浏览的页面需要登录,为了提高您的阅读体验,请在右上角登录您的账号!
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 欧小刀 于 2014-2-19 16:56 编辑
通常变频器与PLC进行通讯控制时,特别是在写频率时需要在PLC程序中加入CRC检验程序,很多人对检验程序看不懂,不明白是怎么一个原理。以下我们来详细说说这个CRC校验。 何为CRC校验? 采用CRC-16,即2字节冗余循环码CRC,低字节在前。CRC码由发端计算,放置于发送消息帧的尾部,接收端再重新计算接收到信息的CRC码,比较计算得到的CRC码是否与接收到的相符,若不符则表明出错。CRC码的计算包括整个消息内容,计算时只用8位数据位,而起始位、停止位及可能的校验位均不参与CRC计算。广州旭康 自动化专注于为您提供专业的自动化系统解决方案! CRC校验可以100%检测出所有奇数个随机错误。CRC-16校验可以检测出长度小于等于16的突发错误,可以保证在1014 bit码元中只含有1位未被检测出的错误。CRC-16的具体算法有多种,以下是一个例子。 1.置16位寄存器为全1,作为CRC寄存器。 2.把一个8位数据与16位CRC寄存器的低字节相异或,把结果放于CRC寄存器中。 3.把寄存器的内容右移一位(朝低位),用0填补最高位,检查最低位(移出位)。 4.如果最低位为0,重复③(再移位);如果最低位为1,CRC寄存器与多项式A001H(1010 0000 0000 0001)进行异或。 5.重复③、④,直到右移8次,这样整个8位数据全部进行了处理。 6.重复②-⑤,进行下一个8位数据的处理。 7.将一帧的所有数据字节处理完后得到CRC-16寄存器。 8.将CRC-16寄存器的低字节和高字节交换,得到的值即为CRC-16码。
回复下载具体内容
专注于工控自动化方面:帮学员:找工作,学技术;助企业:招人才,产品推广,定向委培。
——让技术创造更核心价值 |