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

相关推荐
广州灵眸科技有限公司1 天前
瑞芯微(EASY EAI)RV1126B CAN使用
linux·网络·单片机·嵌入式硬件
SmartRadio1 天前
CH584M vs nRF52840 vs 主流BLE SoC全面对比
单片机·嵌入式硬件·mcu·物联网·开源·硬件工程
Joshua-a1 天前
电压信号 vs. 电流信号
单片机·嵌入式硬件
youcans_1 天前
【STM32-MBD】(12)Simulink 模型开发之ADC
stm32·单片机·嵌入式硬件·simulink·mbd
llilian_161 天前
时间基准的行业赋能者——北斗卫星授时同步统一设备应用解析 时统 授时同步设备
服务器·网络·单片机
优信电子1 天前
ESP32-S3开发环境搭建(arduino版本)
单片机·物联网·arduino
一路往蓝-Anbo1 天前
C语言从句柄到对象 (一) —— 全局变量的噩梦与“多实例”的救赎
c语言·开发语言·stm32·单片机·嵌入式硬件·物联网
松涛和鸣1 天前
DAY42 SQLite3 : Dictionary Import and Data Query Implementation with C Language
linux·c语言·数据库·单片机·网络协议·sqlite
d111111111d2 天前
STM32中USART和UART的区别是什么?
笔记·stm32·单片机·嵌入式硬件·学习
一路往蓝-Anbo2 天前
C语言从句柄到对象 (三) —— 抛弃 Malloc:静态对象池与索引句柄的终极形态
c语言·开发语言·数据结构·stm32·单片机·算法