首页 > 学院 > 开发设计 > 正文

十六进制命令校验C代码

2019-11-06 07:05:12
字体:
来源:转载
供稿:网友

/********************************************

 * CRC校验 */unsigned short GetCrc16 ( char *ptr, unsigned short count )  //其中*ptr为帧首地址,count为(帧长度-2){  unsigned short crc, i;     //unsigned short 无符号整型,范围是[0,65535]  crc = 0;  while(count--)   {      crc = crc ^ (int) *ptr++ << 8;      for(i = 0; i < 8; i++)        {           if(crc & 0x8000)           crc = crc << 1 ^ 0x1021;           else           crc = crc << 1;        }    } return (crc & 0xFFFF);}
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表