crc错误 modbus poll_请教个MODBUS RTU的CRC校验问题?-工业支持中心-西门子中国

news/2024/11/8 6:05:38/

一、转帖:

Modbus RTU采用16位的循环冗余校验码(CRC)。通过一个对数据进行“或”运算以及移位运算的复杂程序,由主设备产生CRC,并且由接收设备进行检查。如果双方计算出的CRC值不符,从设备就会要求重新传送信息。

Modbus RTU协议分为Modbus RTU主站协议和Modbus RTU从站协议。Modbus通信是由功能码来控制的,主站直接访问从站的数据区。

附:Modbus RTU CRC校验码计算方法

在CRC计算时只用8个数据位,起始位及停止位,如有奇偶校验位也包括奇偶校验位,都不参与CRC计算。

CRC计算方法是:

1、  加载一值为0XFFFF的16位寄存器,此寄存器为CRC寄存器。

2、  把第一个8位二进制数据(即通讯信息帧的第一个字节)与16位的CRC寄存器的相异或,异或的结果仍存放于该CRC寄存器中。

3、  把CRC寄存器的内容右移一位,用0填补最高位,并检测移出位是0还是1。

4、  如果移出位为零,则重复第三步(再次右移一位);如果移出位为1,CRC寄存器与0XA001进行异或。

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

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

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

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

二、见:

、实例:

http://www.ad.siemens.com.cn/service/answer/solution.aspx?Q_ID=88795&cid=1081

、使用西门子S7-300 PLC 指针实现CRC16 校验计算:

http://www.docin.com/p-685044155.html

回答者:

1ead9b8c65e4493a66943e925e3c5988.png

阿鸣

-

大师&nbsp&nbsp第17级

2016-09-19 08:07:20

以下网友赞了您的问题:

f1968,hbttkj,shunshun79

填写您的评论...

提问者对于答案的评价:

谢谢阿鸣大师!

暂无评论


http://www.ppmy.cn/news/654870.html

相关文章

来搞清楚CRC校验的原理和实现

在MIPI_CSI-2协议里payload数据的校验使用了CRC校验,但是关于CRC校验只知其一,或者说只知的还不到其一,因此非常有必要搞清楚它,自然的我搜查了一些博主的文章尝试得到答案,最终在知乎前辈的一篇文章中找到了比较容易理…

java 文件crc校验_JavaCRC校验原理

一、基本原理 CRC检验原理实际上就是在一个p位二进制数据序列之后附加一个r位二进制检验码(序列),从而构成一个总长为n=p+r位的二进制序列;附加在数据序列之后的这个检验码与数据序列的内容之间存在着某种特定的关系。如果因干扰等原因使数据序列中的某一位或某些位发生错误…

crc 校验错误_资深工程师:图说CRC原理应用及STM32硬件CRC外设

在嵌入式产品应用中,常常需要应对系统数据在存储或者传输过程中的完整性问题。 所谓完整性是指数据在其生命周期中的准确性和一致性。这些数据可能存储在EEPROM/FLASH里,或者基于通信协议进行传输,它们有可能因为外界干扰或者程序错误,甚至系统入侵而导致被破坏。如果这些数…

解读CRC校验计算

个人随笔 (Owed by: 春夜喜雨 http://blog.csdn.net/chunyexiyu) 参考:http://www.sunshine2k.de/articles/coding/crc/understanding_crc.html 参考:https://en.wikipedia.org/wiki/Cyclic_redundancy_check 参考:https://www.cnblogs.com/…

7z解压crc错误_winrar压缩包提示crc校验和错误,文件被破坏的解决办法

winrar压缩包提示crc校验和错误,文件被破坏的解决办法 书法字体2020.05.09rar校验错误 当你辛辛苦苦下载下来的RAR压缩包解压文件时提示“crc校验和错误,文件被破坏...”,你的直觉肯定是:文件下载过程中损坏了,然后重新…

7z解压crc错误_百度网盘压缩下载文件的CRC校验错误的解决方法

转载自:http://blog.sina.com.cn/s/blog_610787990102xcnv.html 百度网盘压缩下载文件的CRC校验错误的解决方法 从百度网盘用打包压缩方式下载的文件在解压时会碰到CRC校验错误,这里有两种情况: a.如果文件尺寸小于4G,可用国产的好压解出,解出的文件是正确的b.如果文件大…

CRC校验原理及其C语言实现

文章目录 目录前言CRC算法简介CRC参数模型CRC计算CRC校验CRC计算的C语言实现CRC计算工具总结参考资料 目录 前言CRC算法简介CRC计算CRC校验CRC计算的C语言实现CRC计算工具总结 前言 最近的工作中,要实现对通信数据的CRC计算,所以花了两天的时间好好研…

基于LLM构建文本生成系统

背景: 在流量存量时代,内容运营重要性不言而喻。在流量时代,内容可以不要过于多样化和差异化,只需要有足够多的人流量,按流量转化比率来看,1000个人有1%概率转化,素材不变只要增加足够多的流量…