谁给提供个可用的MODBUS RTU 半字节CRC校验程序,谢谢

2020-02-09 09:19发布

谁给提供个可用的MODBUS RTU 半字节CRC校验程序,谢谢
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
ccxlslr
1楼-- · 2020-02-09 13:05
MODBUS_WORD modbus_crc16(MODBUS_BYTE *dp, MODBUS_UINT datalen)
{
    MODBUS_WORD crc;
    MODBUS_WORD i, j;
   
    crc = 0xffff;
    for (i = datalen; i > 0; i--)
    {
        crc ^= (MODBUS_WORD)(*dp++);
        for (j = 0; j < 8; j++)
        {
            if(crc & 1)
            {
                crc >>= 1;
                crc ^= 0xa001;
            }
            else
            {
                crc >>= 1;
            }
        }
    }
   
    return crc;
}
Autostep
2楼-- · 2020-02-09 16:28
需要半字节查表的 计算的速度太慢 查全表空间不够 所以想用半字节查表

一周热门 更多>