- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编c己嗍7第八届工业仪表与自动化学术会议
CRC算法在单片初通信系统中的实现
奏建新 路林考
【上海交通大学自动化系,上海200240)
摘要:主要论述了在单片机通信系统中CRC算法的设计和在单片机硬件环下的编程实现.为了实现单片机系统
之间高效元差错的数据传输,必须对数据进行检错,当传输距离较远或采用无线传输时,这就更为重要了.给出
了3种对应于51单片机硬件环境的C语言程序的算法,并从性能和成本上进行了比较。对按住计算CRC码的方
法给出了一种通用的算法.
关键词:CRC算法c语言线形编码生成多项式单片机
0 引言
在通信系统的众多检错手段中,CRC是非常著名的一种。cRc一全称循环冗余校验是对数据
块校验的一种高效的差错控制方法.在单片机通信系统设计过程中,当传输距离较远或是采用无
线传输时,为了保证高效而无错地传输数据,必须对数据进行检错,从性能和成本上考虑,采用
CRC校验算法远优于奇偶校验和算术和校验等方法。CRC的计算有两种方法,一种是采用专门的
硬件,另一种就是软件方法。对于小型低成本的5l单片机系统而言,常常需要在没有相关硬件
的支持下实现CRC校验,也即通过软件来完成CRC计算(CRC算法).
这里给出了3种算法,从性能和成本上考虑,它们的适用范围也稍有不同:第一种适用于单
片机程序存储空间较小但CRC计算速度要求不高的情况;第二种适用于程序存储空间较大且CRC
计算速度要求较高的情况;最后一种适用于程序存储空间不太大,且CRC计算速度要求适中的情
况。 ’ 。
1 0RC算法的原理
CRC校验主要是利用线形编码理论,基本思想是:在发送端,根据要传送的n位二进制数据
码,以一定的规则产生一个用来进行校验的r位校验码,即CRC码,把它附加在数据码后边,从
C码之间所
而形成一个新的(n+r)位二进制码序列并发送出去;在接收端,根据数据码和CR
遵循的规则进行校验,这样就可以确定数据在传送过程中是否出错了.假设n位二进制数据序列
D=[以以一。…Zdo】,
特定的关系,如果因为干扰而使数据出错了,这种特定的关系就会遭到破坏,因此通过检查这一
R
关系就可以实现对数据的正确性的校验.从检错能力来说,C C不能发现错误的概率可在
0.0047%以下.
校验码R是通过对数据序列D进行二进制除法取余运算得到的,即用一个生成多项式的(r
+1)位二进制序列G=【g,g,-l…gl舒】来除,可以表示为
156
6f.c 第八届工业仪表与自动化学术会议
肌耻e[等】
二
Re[]表杀对括号内的式子进行取余运算。
式中,,D(x)表示数据序列左移r崔,
÷ f
R
生成C C码的多项式通常采用:
CRC-16:(美国二进制同步系统中采用)G(x)=z16+x15+x2+1
CRC-CCITT:(由欧洲CCITT推荐)G(x)=石16+石12+工5+1
CRC一32:
在这里我们主要讨论16位的CRC算法,生成多项式采用CRC—CCITT。
校验码的编码计算如上所述,而校验过程则是对M序列直接进行除法取余运算:
肌)-Re[筹】、. .(2)
所得余式R(x)若为零则表示数据正确,否则认为发生错误。用软件计算CRC码时,接收方可
以将接收到的信息码求CRC码,比较结果和接收到的CRC码是否相同。
CRC校验采用多项式编码方法,求CRC码采用的是模2加减法运算法则(不带进位借位的按
位加减法),实际上就是逻辑上的异或运算,乘法和除法运算与普通乘除法运算一样。
2求
您可能关注的文档
- 羊毛染色含铬染料替代产品与技术的研讨.pdf
- A review of industrial symbiosis research: theory and methodology.pdf
- 0—3岁婴幼儿21292例眼病筛查研究.pdf
- A wave energy resource assessment in the China's seas based on multi-satellite merged radar altimeter data.pdf
- George Orwell's Non-linear Narrative in The Road To Wigan Pier.pdf
- 羊毛衫成衣后整理中的常见问题解析研究.pdf
- 羊毛无氯防缩、防起球工艺发展趋势研讨研究.pdf
- 羊毛稀土抗菌及其染色性能研讨.pdf
- 羊毛纤维集合体水份含量的测量方法研究.pdf
- 脱硫工艺用水和废水回用系统改造成果分析研究.pdf
文档评论(0)