[STM32F1] 关于modbus协议

[复制链接]
 楼主| dali2015 发表于 2015-12-4 17:54 来自手机 | 显示全部楼层 |阅读模式
大神们,modbus协议rtu模式,我看到别人的毕业论文是,每个侦各自加入检验码,然后发送,可是协议是只有两个检验码的,我理解是前面从机地址侦和数据侦共同拥有后面的两个检验码,但别人的论文为什么是每个侦都加入了检验码,这样最后面两位也就不是检验码了,这样符合modbus协议吗?请做过这个协议的大神指点,谢谢!
Larm1 发表于 2015-12-4 21:52 来自手机 | 显示全部楼层
标准的modbus的一帧数据定义如下:从机地址+功能码+…+检验码,验
yklstudent 发表于 2015-12-4 21:57 | 显示全部楼层
每帧数据包都必须有CRC16-CCITT校验的,其对通信地址+功能码和数据部分进行CRC16-CCITT校验
Larm1 发表于 2015-12-4 22:03 来自手机 | 显示全部楼层
其中校验码是对前面数据的检验,常采用CRC校验方式,不知道你所说的论文中一帧是否是这个概念…以上针对RTU模式,仅供参考
acguy 发表于 2015-12-5 11:55 来自手机 | 显示全部楼层
找文档与看文档的能力是it业基本功。标准很简明易懂。
ningling_21 发表于 2015-12-5 11:59 | 显示全部楼层
每一帧都有CRC校验码,不要乱看论文,多看看标准文档
laoxu 发表于 2015-12-5 13:22 | 显示全部楼层
前面所有的数据都要经过CRC校验,得出的CRC校验码,作为最后两个补充数据传送。
diweo 发表于 2015-12-5 16:12 | 显示全部楼层
你的理解偏了不只一点点。。。
xm419 发表于 2015-12-5 16:28 | 显示全部楼层
CRC检验,记得高低位对调的问题
hnkf118 发表于 2015-12-5 17:21 | 显示全部楼层
看标准文档吧。有GB的文档。。。 自己网上找下。 一帧是指从地址开始到CRC校验 为一个完整的数据帧。 最后两字节是校验。 校验是前面从地址开始所有数据的校验(CRC校验码位置的2字节除外)
hxfxt 发表于 2015-12-5 18:42 | 显示全部楼层
多看看基础资料吧!这个对你肯定会有很大帮助的!见附件:)

MODBUS协议中文版.pdf

1 MB, 下载次数: 19

andyjian 发表于 2015-12-5 21:18 | 显示全部楼层
 楼主| dali2015 发表于 2015-12-12 13:28 来自手机 | 显示全部楼层
已经解决了,多谢大神们!!!!我看错了那个取检验码的程序!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

11

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部