CRC多项式异或初始设定参数一般有下面几个:
1)多项式(POLY):生成项的简写,用16进制表示。例如:1021(注意,不加"0x")。
2)初始值(INIT):计算开始时CRC寄存器的初始值,用16进制表示。 例如:0000(注意,不加"0x")。
3)结果异或值(XOROUT):计算结果与此参数异或后得到最终的CRC值,用16进制表示。例如:FFFF(注意,不加"0x")。
4)输入值反转(REFIN):待测数据的每个字节是否按位反转,反转对应true,不反转对应false。
5)输出值反转(REFOUT):在计算后之后,异或输出之前,整个数据是否按位反转,反转对应true,不反转对应false。
6)输出字节反序(ORDER):CRC输出结果由两个字节组成,本软件认为高字节在前为正序,对应值为false,低字节在前为反序,对应值为true。
以CRC16常用校验方法为例:
下面几个软件用于根据已知数据包和校验值反向查询初始参数:
反向查询软件:
1)根据(校验码)反查CRC8(多项式异或循环冗余)校验初始参数在线计算器
2)根据(校验码)反查CRC16(多项式异或循环冗余)校验初始参数在线计算器
3)根据(校验码)反查CRC24(多项式异或循环冗余)校验初始参数在线计算器
4)根据(校验码)反查CRC32(多项式异或循环冗余)校验初始参数在线计算器
正向验证软件:
1)16进制(CRC8)(多项式异或)校验(2),循环冗余校验在线计算器
2)16进制(CRC16)(多项式异或,多种)校验(1),循环冗余校验在线计算器
3)16进制(CRC24)(多项式异或,多种)校验,循环冗余校验在线计算器
4)16进制(CRC32)(多项式异或)校验,循环冗余校验在线计算器