串口通信,帧头帧尾校验和不懂,大神指导

2019-03-23 15:48发布

串口通信,
1.帧头帧尾校验和是自己定的么?这算是一个协议么?
2.我看到有的协议有帧头没有帧尾但是有校验和,帧尾是可以有可以没有么?
3.帧尾就是校验和么?帧尾和校验和有一个就可以吗?
4.帧头跟帧尾都必须有吗还是帧头必须有帧尾不必须有?
作为小白,网上查着查着就乱了,求大神解释上面问题                                                               
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
lcofjp
1楼-- · 2019-03-23 18:03
/ 如果是你自定义的协议,那么就随便你定义,任何东西有没有都可以。
如果是标准协议,就要按着标准来。
bobde163
2楼-- · 2019-03-23 20:11
 精彩回答 2  元偷偷看……
shijizai
3楼-- · 2019-03-24 01:29
lcofjp 发表于 2018-7-2 10:10
如果是你自定义的协议,那么就随便你定义,任何东西有没有都可以。
如果是标准协议,就要按着标准来。

嗯嗯
shijizai
4楼-- · 2019-03-24 06:55
bobde163 发表于 2018-7-2 10:22
添加帧头或帧尾或两者都有的目的是为了保证通信的可靠性和接收数据时的便利性,在解析的时候会很方便,增加 ...

什么算是解析?
shijizai
5楼-- · 2019-03-24 09:30
 精彩回答 2  元偷偷看……
Li_Lei
6楼-- · 2019-03-24 11:06
1.帧头帧尾校验和是自己定的么?这算是一个协议么?
如何把串口的一个个字节分成一个个数据包是要有一个标准,典型的modbus就是用时间间隔来分包,当然你也可以根据自己的实际情况自己定义,校验是为了提高数据抗干扰或可靠性,和分包没关系.

2.我看到有的协议有帧头没有帧尾但是有校验和,帧尾是可以有可以没有么?
在帧头放上特殊标记和要发送数据长度(或规定好长度)是可以的,这样可以在接受端限制好待接受缓冲区大小,主要针对于数据包长度不固定的情况.

3.帧尾就是校验和么?帧尾和校验和有一个就可以吗?
还是那个意思,分包和校验是两个东西,不能确定一个数据包的长度校验根本就无从谈起.

4.帧头跟帧尾都必须有吗还是帧头必须有帧尾不必须有?
不说了

一周热门 更多>