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

2019-03-23 15:48发布

串口通信,
1.帧头帧尾校验和是自己定的么?这算是一个协议么?
2.我看到有的协议有帧头没有帧尾但是有校验和,帧尾是可以有可以没有么?
3.帧尾就是校验和么?帧尾和校验和有一个就可以吗?
4.帧头跟帧尾都必须有吗还是帧头必须有帧尾不必须有?
作为小白,网上查着查着就乱了,求大神解释上面问题                                                               
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
19条回答
bobde163
2019-03-24 13:29
shijizai 发表于 2018-7-2 11:01
串口通信,工程中实现功能时,主从设备间应该怎样互传,比如校验和什么的是否需要互传之类的,大神能简单 ...

两个设备间通信,就好比两个人之间在聊天对话,首先这两个人至少要说同一种语言吧,比如中文或者是英语之类,语言不同当然是听不懂了,串口通信中,大家使用的“语言文字”就是一个个字节,一共256个字节,就像是汉语中的一个个汉字一样,然后你要对话,那一般是一句一句话的说吧,才能更好的理解对方的意思,很少见到一个字一个字的说吧,相应的串口通信协议中,大多都是多个字节“组成一句话”,再发送出去。
帧头就好比说话前先打个招呼:“我要说话了,你听着”,然后说要说的话
帧尾就好比一句话说完了,也打个招呼:“我说完了”,然后对方就去处理你说的话的意思了。
校验和就好比一个暗号,事先双方定义好对暗号的规则,比如说所有字的笔画加起来一定要等于100画等这样的规则,这样对方在听到你说的话之后,会去计算这些笔画的总数对不对,不对的话那说明要么是对方说错话了,要么是我这一方听错了,不能处理。

所以以我们日常中的对方过程来作模型,可以看到帧头和帧尾还有校验和你都可以自己定义的取舍,比如你两个人挨着在说悄悄话时,就可以不需要这些东西了,但是如果在隔着桌子在问答时,那可能就需要帧头或者帧尾来表示要开始说话或者结束说话。

这样解释,不知道你能不能理解

一周热门 更多>