CRC校验比较常用,本例校验算法异或0x1021.

U16 u16CRCVerify (const U8  *pu8Data,U32  u32Len,U16  u16CRCInit)
{U8  u8i;U32 u16CRC = u16CRCInit;while (u32Len--) {u8i    = 8;u16CRC = u16CRC ^ (((uint16_t)*pu8Data++) << 8);do {if (u16CRC & 0x8000) {u16CRC = u16CRC << 1 ^ 0x1021;} else {u16CRC = u16CRC << 1;}} while (--u8i);}return u16CRC;
}

16位CRC校验算法相关推荐

  1. CRC-16原理及通用的16位CRC校验算法代码

    CRC-16原理及通用的16位CRC校验算法代码 循环冗余码校验英文名称为Cyclical Redundancy Check,简称CRC.它是利用除法及余数的原理来作错误侦测(Error Detect ...

  2. 16位CRC校验算法,16进制crc校验

    在CRC计算时只用8个数据位,起始位及停止位,如有奇偶校验位也包括奇偶校验位,都不参与CRC计算. CRC计算方法是: 1. 加载一值为0XFFFF的16位寄存器,此寄存器为CRC寄存器. 2. 把第 ...

  3. 怎么得到16位校检和-c语言,16位CRC校验C语言算法.pdf

    16位CRC校验C语言算法.pdf CRC 算法原理及C 语言实现 摘 要 本文从理论上推导出CRC算法实现原理,给出三种分别适应不同计算机或微控 制器硬件环境的C语言程序.读者更能根据本算法原理,用 ...

  4. 16位CRC校验码计算,485MODBUS计算

    CRC计算方法是: 1. 加载一值为0XFFFF的16位寄存器,此寄存器为CRC寄存器. 2. 把第一个8位二进制数据(即通讯信息帧的第一个字节)与16位的CRC寄存器的相异或,异或的结果仍存放于该C ...

  5. 16位CRC循环冗余校验码生成函数

    16位的CRC校验码生成,可使用以下函数: //16位CRC校验码生成 //返回值:CRC校验码 unsigned int CRC_check(unsigned char *addr,int num) ...

  6. CRC校验算法的解析,暨对网上的CRC详解的补充

    一.CRC的形象理解 本文面向对CRC校验有一定基础的读者,如果你不懂,请戳这里.维基百科还有图解版的. 在CRC的具体实现中,如果要计算CRC的数据很长,一般都会用到寄存器,用来保存当前的计算到的C ...

  7. CRC校验算法的数学原理(上)

    介绍   CRC是Cyclic Redundancy Check的缩写,用中文来讲,就是 循环冗余校验.是一种通过对数据产生固定位数校验码以备侦测数据错误的数据校验技术,主要用来侦测数据传输错误,也可 ...

  8. 16 位 CRC 查表法的简单使用方法

    16位CRC查表法的简单使用方法 Modbus CRC16: crc16.h #ifndef __CRC16_H__ #define __CRC16_H__#include "main.h& ...

  9. 【FPGA】CRC校验算法从数学原理到代码实现

    老规矩,转b站 [[FPGA]CRC校验算法从数学原理到代码实现-哔哩哔哩]

  10. modbus c语言校验算法,Modbus CRC校验算法

    终于找到了 Modbus CRC 校验算法 算法一: unsigned int calccrc(uchar crcbuf,uint crc) { uchar i; crc=crc ^ crcbuf; ...

最新文章

  1. ESP-12F模块转接板测试版调试说明,下载MicroPython程序。ESP8266-12F
  2. eclipse java8报错_eclipse4.3安装支持Java8插件,之后就报错无法打开eclipse,求解?
  3. 12、MySQL逻辑运算符
  4. 免去架构算法调优,如何让你的系统风驰电掣?|图说
  5. 内衬纸缺陷在线检测系统
  6. Android Studio如何去除界面默认标题栏
  7. 阿里云容器服务Kubernetes之Jenkins X(1)-安装部署实践篇
  8. PHP_$_SERVER中QUERY_STRING,REQUEST_URI的用法
  9. 善用佳软:高效能人士的软件应用之道
  10. SCSI设备IO栈与块设备并发机制
  11. u深度制作linux启动盘制作工具,U深度制作u盘启动盘制作工具
  12. Gmail Driver:你的gmail成了你的硬盘。
  13. 洛谷-P1478-陶陶摘苹果(升级版)
  14. oul可以用作c语言常量吗,吉大15秋学期《C语言程序设计》在线作业二 答案
  15. 如何快速大批量进行复制粘贴数据?
  16. Java中的门面设计模式
  17. Wannafly挑战赛12 C-删除子串
  18. stm32cubeide调试查看函数值_STM32CubeIDE使用ITM调试
  19. 1.3 常规自媒体与小红书运营有什么区别?【玩赚小红书】
  20. TP简约自适应导航网站源码

热门文章

  1. querydsl动态 sql_QueryDSL-JPA
  2. Hadoop完全分布式配置
  3. Windows XP 默认蓝色桌面的 RGB
  4. 用 Python 实现植物大战僵尸代码
  5. 2022华为杯研究生数学建模竞赛B题思路解析
  6. 你好2019,我是全新的CPDA数据分析师课程
  7. 记录一次重装win10系统的流程
  8. VOIP语音电话配置
  9. 数据输出matlab,MATLAB数据输出
  10. tomcat日志配置——如何查看日志