论坛元老
 
- 积分
- 8922
- 金钱
- 8922
- 注册时间
- 2020-5-11
- 在线时间
- 4479 小时
|
发表于 2022-4-15 17:08:36
|
显示全部楼层
数据存入数组:
w[0]=s>>8;//高字节
w[1]=s;//低字节
CRC当然得写个函数计算整个数组的CRC值啦,比如
- //--------------------------------------------------
- //CRC16计算
- //nbyte为字节数
- //多项式=X16+X15+X2+1
- //--------------------------------------------------
- U16 crc16(U8 *p,U8 nbyte)
- {
- U16 crc=0xffff;
- U8 i,d;
- while(nbyte--)
- {
- d=*(p++);
- for(i=0x01;i;i<<=1)
- {
- if(crc&0x1){crc>>=1;crc^=0xA001;}
- else crc>>=1; //数据同CRC最低位相异或
- if(d&i)crc^=0xA001; //数据都是低位在前
- }
- }
- return(crc);
- }
复制代码 |
|