crc16 with word & byte--查表法

#1, BYTE CRC

参考:

https://blog.csdn.net/m0_37697335/article/details/113267780?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522F1451286-1B97-44AA-A5FC-386045B4939B%2522%252C%2522scm%2522%253A%252220140713.130102334...%2522%257D\&request_id=F1451286-1B97-44AA-A5FC-386045B4939B\&biz_id=0\&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend\~default-1-113267780-null-null.142^v100^pc_search_result_base9\&utm_term=crc16 modbus查表法 c语言\&spm=1018.2226.3001.4187
注意表格不对,会有错误。

/MODBUS******************

  • Name: CRC-16/MODBUS x16+x15+x2+1

  • Width: 16

  • Poly: 0x8005

  • Init: 0xFFFF

  • Refin: True

  • Refout: True

  • Xorout: 0x0000

  • Note:

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

    WORD CRC_GetModbus16(BYTE * pData, WORD nLength)

    {

    WORD cRc_16 = 0xFFFF, i;

    BYTE temp;

    for (i = 0; i < nLength; ++i)

    {

    temp = (BYTE)(cRc_16 & 0xFF);

    cRc_16 = (WORD)((cRc_16 >> 8) ^ crc16tab[(temp ^ pData[i]) & 0xFF]);

    }

    return cRc_16;

    }

    #2, WORD CRC

相关推荐
安生生申2 分钟前
STM32 ESP8266连接ONENET
c语言·stm32·单片机·嵌入式硬件·esp8266
广药门徒8 分钟前
电子器件烧毁的底层逻辑与避坑指南
单片机·嵌入式硬件
点灯小铭5 小时前
基于单片机的社区医院小型高压蒸汽灭菌自动控制器设计
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
youcans_5 小时前
【动手学STM32G4】(3)STM32G431之定时器
stm32·单片机·嵌入式硬件·定时器
悠哉悠哉愿意5 小时前
【嵌入式学习笔记】AD/DA
笔记·单片机·嵌入式硬件·学习
松涛和鸣5 小时前
DAY47 FrameBuffer
c语言·数据库·单片机·sqlite·html
范纹杉想快点毕业5 小时前
《嵌入式通信与数据管理:从状态机到环形队列的完整实战指南》
单片机·嵌入式硬件
点灯小铭6 小时前
基于单片机的硫化氢、氨气、甲烷、一氧化碳气体多种有害气体检测与声光报警系统设计
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
小李做物联网6 小时前
【单片机毕设】c24基于单片机stm32蓝牙温室大棚物联网毕业设计
stm32·单片机·嵌入式硬件·物联网
电子工程师成长日记-C517 小时前
51单片机厨房环境参数监测(温湿度、烟雾、燃气、CO、甲醛)
单片机·嵌入式硬件·51单片机