CRC=0xFFFF;//setall1
}
}
else
③把寄存器的内容右移一位,用0填补最高位,检查最低位。
⑤重复步骤③和④,直到右移8次,这样整个8位数据全部进行了处理。同语课堂绘画-同语app1.1.1 免费版
Len--;
CRC=(CRC>>1)^0xA001;
冗余循环码(CRC)包含2个字节,即16位二进制。CRC码由发送设备计算,放置于发送信息的尾部。接收信息的设备再重新计算接收到信息的CRC码,比较计算得到的CRC码是否与接收到的相符,如果两者不相符,则表明出错。
unsignedint IX,IY,CRC;
①预置16位寄存器为十六进制FFFF(即全为1)。称此寄存器为CRC寄存器。
Rcvbuf[0]=(CRC&0xff00)>>8;//高位置
计算CRC码的步骤为:
{
⑥重复步骤②到⑤,进行下个8位数据的处理。
}
CRC=CRC^(unsignedint)(Array[IX]);
CRC=CRC>>1; //
{
}
if(Len<=0)
④如果最低位为0:重复第3步,再次右移一位;如果最低位为1:CRC寄存器与多项式A001(1010000000000001)进行异或运算。
⑦最后得到的CRC寄存器的值即为CRC码。
直接法生成代码:
{
returnCRC;
CRC=Rcvbuf[0]<<8;
{
在进行CRC码计算时只用8位数据位。起始位、停止位、奇偶校验位都不参与CRC码计算。
CRC=0;
Rcvbuf[1]=(CRC&0x00ff); //低位置
unsignedshortcrc_16(unsignedchar*Array,unsignedchar*Rcvbuf,unsignedintLen)
CRC+=Rcvbuf[1];
for(IY=0;IY<=7;IY++)
⑧将CRC码分成高8位和低8位,按低位在先,高位在后,将它们加到传送数据之后。
CRC-16(循环冗余错误校验)
if((CRC&1)!=0)
else
②把第一个8位数据与16位CRC寄存器的低位相异或运算,把结果放于CRC寄存器。
for(IX=0;IX<=Len;IX++)
展开

e学云教学app苹果版1.1.2 教师版
文华财经资讯app1.0.0 安卓版
影子赛车崛起下载安装-影子赛车崛起v1.1.3 安卓版
星空背景亮丽活力蓝精美工作总结报告ppt模板免费版
Max杀毒卫士最新版下载-Max杀毒卫士1.81 官方版
我的世界丰胸模组手机版下载-我的世界丰胸模组1.0 安卓版
Goodmeta数字藏品下载-Goodmeta数字藏品appv2.0 官方版
战车少女手游新版下载-战车少女手游新服1.0渠道服
独酷设计APP下载安卓版-独酷设计0.91 官方最新版
玩乎app1.0 安卓用户版
铁甲二手机app下载-铁甲二手机5.4.5.0 安卓最新版
二级建造师题库app下载-二级建造师题库2.7.9 最新版
公主博物馆管理员1.0 安卓版
我的世界山海大陆下载手机版安装-我的世界山海大陆整合包1.8 最新版
切糕全能广告屏蔽工具-切糕全能广告屏蔽专家1.0 中文官方版
豫牧通app下载-豫牧通(企业版)3.0.6 安卓版
文件外壳查看器
勇往直前九游下载-勇往直前手游九游版1.0.2 安卓版
铃声编辑器免费下载-MP3编辑器(Machete)4.2 PC汉化版
景甜洗脸神器软件-天天p图景甜洗脸神器ios版4.7 苹果最新版