完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
有字符数组假设为“0+3.14”
根据找的资料写程式如下: unsigned char j; unsigned char len=strlen(CRC_Test); unsigned char *ptr; crc=0xFFFF; ptr=CRC_Test; while(len!=0) { crc^=(*ptr); for(j=0;j<=7;j++) { if((crc&0x0001)==1) { crc>>1; crc=crc^0xA001; } else crc>>1; } ptr++; len--; } 把十六位的CRC值编码成ASCII码: unsigned char character1,character2,character3; character1=(unsigned char)(0x40|(crc>>12)); character2=(unsigned char)(0x40|((crc>>6)&0x3F)); character3=(unsigned char)(0x40|(crc&0x3F)); 书上例题正确为0+3.14OqZ 但是我的出来的却是:0+3.14O| 为什么啊??? 有些资料是说crc初始为0x0000,我有试过也没用~~ 哪位大侠帮忙呗!!!万分感谢啊~!!! |
|
相关推荐
2个回答
|
|
忘写了,是CRC-16
|
|
|
|
经高人指点现问题已解决~~
unsigned char j; unsigned char len=strlen(CRC_Test); unsigned char *ptr; crc=0x0000; ptr=CRC_Test; while(len!=0) { crc^=(*ptr); for(j=0;j<=7;j++) { if((crc&0x0001)==1) { crc>>=1; crc=crc^0xA001; } else crc>>=1; } ptr++; len--; } 已调试OK!!{:soso_e121:} |
|
|
|
只有小组成员才能发言,加入小组>>
3979 浏览 0 评论
8536 浏览 0 评论
5954 浏览 0 评论
4098 浏览 1 评论
5189 浏览 0 评论
请问一下qspi mtsr引脚传输一次32bit后引脚不拉低怎么解决?
417浏览 2评论
655浏览 2评论
4762浏览 2评论
最近UJA1023开发遇到问题了,各位大神有谁知道可以替代这颗芯片的
587浏览 1评论
820浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-28 10:27 , Processed in 0.609551 second(s), Total 99, Slave 83 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号