LabVIEW编程LabVIEW开发 CRC16-CCITT- False校验 表例程与相关资料

简介: LabVIEW编程LabVIEW开发 CRC16-CCITT- False校验 表例程与相关资料

LabVIEW编程LabVIEW开发  CRC16-CCITT- False校验  表例程与相关资料

CRC16-CCITT- False校验用的地方不多,一般都是按照modbus crc校验。设计到左移右移的区别。厂家的modbus crc16校验中,LabVIEW用的是右移的方式,这与校验算法相反,但是它后来异或的地方也是取反了,所以虽然表面上和算法不同,其本质是一样的。

Modbus CRC16校验如下所示,用的是右移,并与A001异或。

8005取反就是A001

df54563024754fc2bd2d3f823e54c1ec.png

CRC16-CCITT- False校验的LabVIEW程序,则是严格按照定义进行的,左移异或的参数。计算过程如下。

 

一个完整的CRC参数模型应该包含以下信息:WIDTH,POLY,INIT,REFIN,REFOUT,XOROUT。

NAME:参数模型名称。

WIDTH:宽度,即生成的CRC数据位宽,如CRC-8,生成的CRC为8位

POLY:十六进制多项式,省略最高位1,如 x8 + x2 + x + 1,二进制为1 0000 0111,省略最高位1,转换为十六进制为0x07。

INIT:CRC初始值,和WIDTH位宽一致。

REFIN:true或false,在进行计算之前,原始数据是否翻转,如原始数据:0x34 = 0011 0100,如果REFIN为true,进行翻转之后为0010 1100 = 0x2c

REFOUT:true或false,运算完成之后,得到的CRC值是否进行翻转,如计算得到的CRC值:0x97 = 1001 0111,如果REFOUT为true,进行翻转之后为11101001 = 0xE9。

XOROUT:计算结果与此参数进行异或运算后得到最终的CRC值,和WIDTH位宽一致。

通常如果只给了一个多项式,其他的没有说明则:INIT=0x00,REFIN=false,REFOUT=false,XOROUT=0x00。

常用的21个标准CRC参数模型:

a9a95cdd421d4f0586c48c83b1258054.png 厂家有提供LabVIEW的例子,但是不好用,只能运行VB的demo,现在将这些资料都放到这里,留个纪念,或者在以后的LabVIEW项目改造升级中会用到。


相关资料说明,如下所示。

LabVIEW、LabVIEW开发、LabVIEW编程、LabVIEW程序

文字内容均在附件Word中,同时上文中提到的例子和资料,均在word中的附件里,可点击下载。登录www.bjcyck.com可以查看更多详细信息。这里只是简略的介绍,有任何关于LabVIEW、LabVIEW开发、LabVIEW编程、LabVIEW程序相关问题,请与我们联系。

相关文章
|
5天前
|
传感器 算法 数据格式
QT Modbus RTU调试助手(包含算法实现CRC MODBUS16校验)
QT Modbus RTU调试助手(包含算法实现CRC MODBUS16校验)
|
5天前
|
数据采集 异构计算
LabVIEW编程LabVIEW开发高级数据采集技术 操作数字IO 例程与相关资料
LabVIEW编程LabVIEW开发高级数据采集技术 操作数字IO 例程与相关资料
42 22
|
5天前
|
XML 数据格式
LabVIEW定义自定义错误代码在应用程序中使用
LabVIEW定义自定义错误代码在应用程序中使用
10 0
|
5天前
LabVIEW编更改研华数字板卡中DIO方向 例程与相关资料
LabVIEW编更改研华数字板卡中DIO方向 例程与相关资料
12 2
|
5天前
|
存储 知识图谱 Windows
2021-08-06 LabVIEW编程LabVIEW控制8742 Picomotor Controller例程与相关资料
2021-08-06 LabVIEW编程LabVIEW控制8742 Picomotor Controller例程与相关资料
12 1
|
5天前
|
传感器 异构计算
LabVIEW编程LabVIEW开发NI 7851R同步到背板时钟 例程与相关资料
LabVIEW编程LabVIEW开发NI 7851R同步到背板时钟 例程与相关资料
21 10
|
5天前
|
数据采集 编解码 芯片
LabVIEW编程LabVIEW开发高级数据采集技术 计数器定时器的操作 例程与相关资料
LabVIEW编程LabVIEW开发高级数据采集技术 计数器定时器的操作 例程与相关资料
32 11
|
5天前
|
数据采集 人工智能
LabVIEW编程设置NI6251DAQmx物理通道例程与相关资料
LabVIEW编程设置NI6251DAQmx物理通道例程与相关资料
16 2
|
5天前
|
C++
【51单片机】添加模块代码的常见问题(图示&代码演示)
【51单片机】添加模块代码的常见问题(图示&代码演示)
|
5天前
|
算法 异构计算
m基于FPGA的Alamouti编码verilog实现,包含testbench测试文件
m基于FPGA的Alamouti编码verilog实现,包含testbench测试文件
36 5