关于MODBUS协议的CRC校验

我的传感器是MODBUS协议,串口通信,我想自己编写一个上位机软件与之通信,请问大家我编写的软件只要按照MODBUS协议的命令格式发送数据就可以了是吧,接受的时候还用编C... 我的传感器是MODBUS协议,串口通信,我想自己编写一个上位机软件与之通信,请问大家我编写的软件只要按照MODBUS协议的命令格式发送数据就可以了是吧,接受的时候还用编CRC校验吗?不用CRC会有什么后果呢?是接收不到数据,还是有可能接收到是错误的呢?还是一般情况下没有什么影响呢? 展开
 我来答
1丝冷风
推荐于2016-03-04 · 技术更新,永无止境。
1丝冷风
采纳数:587 获赞数:5889

向TA提问 私信TA
展开全部
1、上位机须按照MODBUS协议的命令格式发送数据(包括计算的CRC值),传感器才能正确辨识数据。若无CRC值,传感器将返回含有错误号的应答包,不会得到正确结果。

2、按照1的所做后,上位机能接收到传感器的数据。你可以不对接收的数据进行CRC校验,但这样不能辨识接收数据的准确性。
标准的做法,发送前计算CRC值并一起发送,接收后也计算CRC值并与接收的校验码对比是否相等,以辨别数据是否准确。
虎啸X5HmG
推荐于2020-01-24 · TA获得超过1272个赞
知道小有建树答主
回答量:1262
采纳率:88%
帮助的人:644万
展开全部
按照标准协议编即可,但需要了解传感器相应的参数设置,波特率等参数。
接收的时候必须要CRC校验,否则你不知道你接收的数据是不是正确的数据,就要靠CRC校验来判断。
不用 的后果就是,你没办法处理数据了,不知道哪些是正确的数据~
综上,必须CRC校验~~
追问
谢谢大家!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-04-07
展开全部
CRC校验 能保证接收数据的准确

发送前计算,一起发送
接收后也要计算,再与发送过来的 校验码 比对,前后不一致显然接收的数据有误

百度百科里有介绍的
追问
谢谢大家!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
您可能需要的服务
百度律临官方认证律师咨询
平均3分钟响应 | 问题解决率99% | 24小时在线
立即免费咨询律师
17027人正在获得一对一解答
天津金色童年5分钟前提交了问题
苏州天空之城3分钟前提交了问题
长沙森林舞者2分钟前提交了问题
下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消
还有疑问? 马上咨询34907位在线律师,3分钟快速解答
立即免费咨询律师

辅 助

模 式