打印

请教个CRC问题!!!多谢!!!

[复制链接]
1769|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ky_21ic|  楼主 | 2007-6-29 11:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
code unsigned char auchCRCHi[] = {0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41,0x00, 0xC1, 0x81,....

code unsigned char auchCRCLo[] = {0x00, 0xC0, 0xC1, 0x01, 0xC3, 0x03, 0x02, 0xC2, 0xC6, 0x06, 0x07, 0xC7,0x05, 0xC5, 0xC4,....

unsigned short int CRC16(unsigned char *puchMsg,unsigned short usDataLen)
  {unsigned char uchCRCHi;unsigned char uchCRCLo;unsigned char uIndex ; 
   uchCRCHi=0xFF ; /* CRC 的高字节初始化 */  **********
   uchCRCLo=0xFF ; /* CRC 的低字节初始化 */  **********
   while (usDataLen--) /* 完成整个报文缓冲区 */
     {uIndex = uchCRCLo^*puchMsg++ ; /* 计算 CRC */ ??????--1
     uchCRCLo = uchCRCHi^auchCRCHi[uIndex] ;    ???????--2
     uchCRCHi = auchCRCLo[uIndex] ;}        ???????--3
     return (uchCRCHi << 8 | uchCRCLo) ;}      ???????--4

我的问题:
 1.auchCRCHi[] ,auchCRCLo[] 中:对应的数值是最终的CRC值吗??如不是是什么值??
 2.*号处,初值为0可以吗??
 3.(主要的)问号处,能详细的解释下这四行吗??uIndex是个什么值???
   
小弟再次 表示感谢!!!!!!!!!!!!!

相关帖子

沙发
ybtthaxiq| | 2008-4-25 16:46 | 只看该作者

1

return返回的才是带CRC校验码的字符串

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

65

主题

211

帖子

1

粉丝