【技术实现步骤摘要】
适用于多机可靠通信的通信协议、编解码方法及通讯设备
本专利技术涉及通信和控制领域中有关协议制定的编解码方法,具体为一种适用于多机可靠通信的通信协议编解码方法。
技术介绍
通信协议是需要通信设备间达成一种约定,它对包含数据格式、传送速度、同步方式、校验方式以及功能字符定义等问题作出统一规定,在设备间通信中必须共同遵守。在实际通信应用中,如果缺少一个合理、严格、规范的通信协议,将无法保证数据传输的正确性和通信的可靠性。一般传送的数据内容被定义为字节的形式组织在协议帧中,并在帧中从前到后依次排列。传统的帧编码格式简单,一般包括:起止标记位、数据长度、功能码、数据、校验和结束标志位,多适应于上位机和下位机之间通信,不能满足多设备之间的通信需要。此外,传统帧解码时中只通过功能码识别该帧功能,没有对帧内容进行分类,导致代码可读性差不利于代码维护和升级。
技术实现思路
针对传统帧编解码方法的不足,本专利技术拟解决的问题是,提供一种适用于多机间可靠通信的具备帧内容分类的低误码率通信协议编解码方法。该方法帧头部分包含源地址、目标地址和帧类型,适用于多机通信,同时帧解析时可通过帧类型对帧 ...
【技术保护点】
一种适用于多机可靠通信的通信协议,其特征在于,所述的通讯协议的帧格式包括按照从前至后的顺序依次排列的帧开始字段、帧头字段、负载字段、校验字段和结束字段;其中,所述的帧头字段包含按照从前至后的顺序依次排列的帧类型字段、源地址字段、目标地址字段、负载长度字段和功能码字段;所述的负载字段按照负载内容表示成多个连续数据类型字段,形成负载结构模型。
【技术特征摘要】
1.一种适用于多机可靠通信的通信协议,其特征在于,所述的通讯协议的帧格式包括按照从前至后的顺序依次排列的帧开始字段、帧头字段、负载字段、校验字段和结束字段;其中,所述的帧头字段包含按照从前至后的顺序依次排列的帧类型字段、源地址字段、目标地址字段、负载长度字段和功能码字段;所述的负载字段按照负载内容表示成多个连续数据类型字段,形成负载结构模型。2.如权利要求1所述的通信协议,其特征在于,帧开始字段和结束字段为两到三个字节的固定值;所述的校验字段为两个字节的循环冗余校验值,参与校验的数据从帧类型字段到负载字段。3.如权利要求1所述的通信协议,其特征在于,所述的负载长度字段为一个字节长度的数据,定义为负载长度值,该值为负载结构模型的长度;功能码字段为两个字节长度的帧识别码用以标识不同的传输路径、方向和帧类型。4.如权利要求1所述的通信协议,其特征在于,数据类型为char型、short型、fool型、int型或自定义结构体类型。5.如权利要求1所述的通信协议,其特征在于,帧类型字段为一个字节长度,用以标识数据帧类型、命令帧类型或应答帧类型。6.如权利要求1-5任一项所述的适用于多机可靠通信的通信协议的编解码方法,其特征在于,包括以下步骤,组帧编码过程和帧解析过程,所述的组帧编码过程包括,负载装载步骤,将发送的负载数据按照负载结构模型依次赋值,负载长度为连续类型字段的总长度即负载结构模型的长度;帧头打包步骤,数据发送设备创建字节数组缓冲区用于存储发送数据帧,依次为帧头字段的每个字段内容赋值并装载到发送数据缓存区中,完成帧头打包;完整传输帧打包步骤,结合帧类型字段到负载字段,计算得到循环冗余校验值,将负载内容、校验码和结束字段装载到发送数据缓存区中,完成完整传输帧打包;最后装载发送数据缓冲区,完成组帧编码过程;帧解析过程包括,前导码过滤步骤:创建接收数据字节数组缓冲区,对接收数据进行前导码过滤,检测数据包有效性,过滤步骤:提取帧头数据,依次对目标地址过滤,对帧类型过滤,提取功能码,解析步骤:进行帧功能码适配,进入功能码匹配的负载数据解析函数,结合该函数中的负载结构模型,完成负载数据解析。...
【专利技术属性】
技术研发人员:陈超,胡庆,
申请(专利权)人:一飞智控天津科技有限公司,
类型:发明
国别省市:天津,12
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。