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

搜狗输入法暴雪游戏皮肤下载-搜狗输入法六款暴雪游戏主题皮肤完整免费版
暴击联盟九游版下载-暴击联盟九游版1.0.32 安卓版
作业啦app1.7.0 学生版
智能家居控制系统施工图集03x602-03X602智能家居控制系统设计施工图集pdf格式免费版
纸黄金资讯通(炒金必备小帮手)1.0 简体中文免费版
津抖云app2.2.1 安卓版
超级房车赛:赛车运动AVX模式修改器下载-超级房车赛赛车运动AVX两项修改器1.0 免费版
宝宝巴士儿歌app下载-宝宝巴士儿歌5.9.08 安卓版
2017世界卫生日手抄报-世界卫生日手抄报图片大全最新精美版
卡车模拟器2025下载-卡车模拟器20251.13 安卓版
快贴app下载-快贴app3.1.1 安卓最新版
流放之路国服功能补丁5.0 最新免费版
梦幻公主房间装饰游戏下载-梦幻公主房间装饰手机版2.2 官方版
太平洋堡垒战争游戏下载-Pacific Fort War Night Royale Survival(太平洋堡垒战争手游)1.1 安卓最新版
梦幻仙语手游官方下载-梦幻仙语手游1.3.20最新版
Crazy Flip Jump Stunts Master下载-Flippy Star - Flip Game(疯狂翻转特技大师手游)1.1 安卓最新版
魅鹰二维码汉字解码工具-魅鹰二维码汉字解码绿色版
小猛编程助手1.0 绿色免费版
助美app下载-助美app(整容整形app)2.5.6 官网最新版
闲置果园手游下载-闲置果园红包版1.2领红包版