望各位大佬,指点迷津!!!
如图 ,这里单条传输难道没有经过串口协议吗!?
---------------------------------------------------------------------
题主已经了解串口协议的基本组成,数据头+有效数据大小+命令+数据1.2.3.4....+校验码
但是关于串口的使用还存有一点点疑惑,我们通常使用的串口好像只是将数据发送过去。。。。然而我今天看到了一个关于蓝牙接收,设计到了协议部分(以下是部分代码)
-------------
平时使用串口助手单字节发送的时候,程序处理没有数据头、数据大小...,这说明单字节发送不是协议传输!? 如果不是,那串口助手右边的传输方式选项,是怎么回事?
使用协议发送 数据码好像有点复杂, 作为发送者,给处理机发送一大堆信息,好像有有些啰嗦,这很矛盾。
PS:其实我我想用串口通信,既能对处理机发送数据,又能命令,有简明一些的算法吗? 还是像上面图片一样,构造一个串口通信协议。。
看了MODBUS协议,这样理解吧:
单条发送、多条发送 当作没有任何格式的发送,数据的发送或者处理没有限制
协议发送 是以一定的格式 发送,需要双方事先约定好的
------
这个意思是说,如果我想自己定义一个串口接收协议,还要设计一个上位机发送软件,用来自动生产格式(校验码、数据长度什么的..),是吗?
刚才理解好像有问题,修正一下:
通常串口发送协议是吧数据封装成为一个、一个的字节信息(双方事先要规定好波特率、校验方式、数据位等信息,,,而这些信息是由内部时序所规定的),在字节内部,Bit与Bit之间由串口协议规定,而字节和字节之间没有特别的联系。
加协议(MODBUS)串口,就像刚才说的 带格式发送,这种协议可以说是在 一个字节 、 一个字节之间(也需要双方事先规定好!!!),也就是在串口协议的基础的上,又覆盖了一层MODBUS协议。。。这样一组字节数据,我们叫做 数据包。
---------------
那么,还是之前的问题 如果我想自己定义一个串口接收协议(可以满足想处理机发送,命令和数据信息),还要设计一个上位机发送软件,用来自动生产格式(校验码、数据长度什么的..),是吗?
我能用原子哥你的串口助手吧!?有相关资料吗?
一周热门 更多>