[发明专利]一种字节流通信的数据包分包方法有效
申请号: | 201811097523.7 | 申请日: | 2018-09-20 |
公开(公告)号: | CN109150406B | 公开(公告)日: | 2021-05-25 |
发明(设计)人: | 丁顺敏 | 申请(专利权)人: | 丁顺敏 |
主分类号: | H04L1/00 | 分类号: | H04L1/00;H04L29/06 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 610000 四川省成都市青*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 字节 流通 数据包 分包 方法 | ||
一种字节流通信的数据包分包方法,属于通信技术技术领域。该方法步骤包括:区分包头;发送方打包;接收方解包。该方法省时省资源。
技术领域
本发明属于通信技术技术领域,具体涉及字节流通信的数据包分包方法。
背景技术
在字节流通信中,目前的数据包分包方法存在高耗能的缺点,不利于资源节约。
发明内容
为了解决上述问题,本发明提供一种字节流通信的数据包分包方法,所述步骤包括:区分包头;发送方打包;接收方解包。
优选地,所述发送方打包方法包括:
缓冲区第9字节赋值为零,取6个字节载荷(待发数据)的bit7填入缓冲区第9字节的bit0~5;
计算源载荷数据6字节的异或校验,将校验码的bit7填入发送缓存的第9字节的bit6,置校验码bit7为0并填入缓存区第8字节;
将6个字节载荷的bit7置0然后依次填入缓冲区的第2~7字节;
根据需要生成包头然后发送。
优选地,所述接收方的解包步骤包括:
步骤1:当收到bit7为1的字节并且地址符合时认为是包头存入接收缓存;
步骤2:继续接收8个bit7为0的字节存入缓存,若后续字节存在bit7为1的情况视为通信出错回到步骤1;
步骤3:利用第9字节还原载荷以及校验码,校验第2~7字节,如果校验失败回到步骤1;校验成功,得到发送方的指令。
本发明的方法是可以连续或者间断发送的,没有时间限制;由于不需要严格的时序控制,可以节省CPU资源,例如定时器;由于不需要延时,也提高了带宽利用率。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
本发明提供了一种字节流通信的数据包分包方法,所述步骤包括:
区分包头;发送方打包;接收方解包。
举例约定(不限于这种方式):定长数据包(9字节)。约定每个字节首位(bit7)为包头标志位,为1表示包头,其他数据的标志位为0.
包头
首字节为包头,其标志位为1;从机使能:bit0~3的值1~4分别代表驱动器1~4,0表示群发,5表示主机;从机回复使能:bit4~6的值表示允许对应的1~4号驱动器对这条命令进行回复,等于0时不允许任何从机回复(只有对应从机接收了该命令且从机回复使能等于该从机编号时才会回复)。
载荷数据
第2~7个字节为源载荷数据bit7置0后的数据。
校验
源载荷数据的依次按位异或的值且bit7置0。
前7字节的bit7
Bit0为源载荷数据第一字节的bit7,依次……到bit6为源校验值的bit7。
具体地,所述发送方打包方法包括:缓冲区第9字节赋值为零,取6个字节载荷(待发数据)的bit7填入缓冲区第9字节的bit0~5;计算源载荷数据6字节的异或校验,将校验码的bit7填入发送缓存的第9字节的bit6,置校验码bit7为0并填入缓存区第8字节;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于丁顺敏,未经丁顺敏许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811097523.7/2.html,转载请声明来源钻瓜专利网。