首页 > 软件下载 > 软件下载

crc16校验码计算器(计算Modbus通信协议串口通信)v1.2 免费最新版

2022-06-16

资源介绍

CRC16校验码计算器软件介绍

CRC16校验码是数据通信行业中最常用的一种差错校验码,其特征是信息字段与校验字段的长度可以任何选择。

上位机须根据MODBUS协议的命令格式发送数据(包含计算的CRC值),从机才可以正确辨识数据。若无CRC值,从机把返回含有错误号的应答包,不会得到正确结果。

CRC-16码由两个字节构成,在开始时CRC寄存器的每一位都预置为1,而后把CRC寄存器与8-bit的数据进行异或(异或:二进制运算 相同为0,不同为1;0^0=0;0^1=1;1^0=1;1^1=0),之后对CRC寄存器从高到低进行移位,在最高位(MSB)的位置补零,而最低位(LSB,移位后已经被移出CRC寄存器)如果为1,则把寄存器与预定义的多项式码进行异或,不然如果LSB为零,则不需要进行异或。重复上述的由高至低的移位8次,第一个8-bit数据处理完毕,用这个时候CRC寄存器的值与下一个8-bit数据异或并进行如前一个数据似的8次移位。所有的字符处理完成后CRC寄存器内的值即为最后的CRC值。

而本CRC16校验码计算器的主要功能就是来精准计算CRC16校验码的。




image.png

CRC16计算器方法

预置1个16位的寄存器为十六进制FFFF(即全为1),称此寄存器为CRC寄存器。

把第一个8位二进制数据(既通讯信息帧的第一个字节)与16位的CRC寄存器的低8位相异或,把结果放于CRC寄存器,高八位数据不变。

把CRC寄存器的内容右移一位(朝低位)用0填补最高位,并检测右移后的移出位。

如果移出位为0:重复第三步(再次右移一位);如果移出位为1,CRC寄存器与多项式A001(1010 0000 0000 0001)进行异或。

重复步骤3与4,直到右移8次,这样整个8位数据全部进行了处理。

重复步骤2到步骤5,进行通讯信息帧下一个字节的处理。

把该通讯信息帧所有字节按上述步骤计算完成后,得到的16位CRC寄存器的高、低字节进行交换。

最后得到的CRC寄存器内容即为:CRC码。

展开全部

版权声明

1 本站所有资源(含游戏)均是软件作者、开发商投稿,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!

2 本站资源下载后不得用于商业用途,所有资源请在下载后24小时内删除。

3 若有关在线投稿、无法下载等问题,请与本站客服人员联系。

4 如侵犯了您的版权、商标等,请立刻联系我们并具体说明情况后,本站将尽快处理删除,联系QQ:2499894784

最近更新

热门排行

最需网客户端 软件问题一手掌握

去 App Store 免费下载 iOS 客户端