一种串口数据编码方法、装置、嵌入式设备及通信系统制造方法及图纸

技术编号:23674491 阅读:16 留言:0更新日期:2020-04-04 19:29
本发明专利技术实施例涉及编码通信领域,公开了一种串口数据编码方法、装置、嵌入式设备及通信系统。其中,串口数据编码方法包括:获取串口数据;将目标报文格式段的串口数据转换为预设进制的串口编码数据;判断串口编码数据是否小于或等于预设进制的第一预设数值;若是,则将串口编码数据加上预设进制的第二预设数值获得编码传输数据,以使编码传输数据不包含字符型数据;若否,则将串口编码数据拆分成均小于或等于第一预设数值的第一拆分数据和第二拆分数据,分别将第一拆分数据和第二拆分数据加上预设进制的第二预设数值获得第一拆分编码传输数据和第二拆分编码传输数据,以使其均不包含字符型数据。本发明专利技术实施例提升了设备通信的可靠性。

A serial data coding method, device, embedded device and communication system

【技术实现步骤摘要】
一种串口数据编码方法、装置、嵌入式设备及通信系统
本专利技术涉及编码通信领域,特别是涉及一种串口数据编码方法、装置、嵌入式设备及通信系统。
技术介绍
当源设备发送的串口数据为通信数据时,其内容包括Linux调试指令消息,该部分消息会被目的设备的底层截取,使到达目的设备的应用层的串口数据不完整,导致了设备通信异常。
技术实现思路
本专利技术实施例旨在提供一种串口数据编码方法、装置、嵌入式设备及通信系统,其能够提升设备通信的可靠性。为解决上述技术问题,本专利技术实施例提供以下技术方案:第一方面,本专利技术实施例提供了一种串口数据编码方法,包括:获取串口数据,所述串口数据包括至少一个报文格式段;将目标报文格式段的串口数据转换为预设进制的串口编码数据;判断所述串口编码数据是否小于或等于所述预设进制的第一预设数值;若是,则将所述串口编码数据加上所述预设进制的第二预设数值获得编码传输数据,以使所述编码传输数据不包含字符型数据;若否,则将所述串口编码数据拆分成第一拆分数据和第二拆分数据,所述第一拆分数据和所述第二拆分数据均小于或等于所述第一预设数值,分别将所述第一拆分数据和所述第二拆分数据加上所述预设进制的第二预设数值获得第一拆分编码传输数据和第二拆分编码传输数据,以使所述第一拆分编码传输数据和所述第二拆分编码传输数据均不包含字符型数据。在一些实施例中,当所述预设进制为16进制时,所述将目标报文格式段的串口数据转换为预设进制的串口编码数据,包括:<br>利用BCD码对目标报文格式段的所述串口数据进行编码;将编码后的所述串口编码数据转换为16进制的串口编码数据。在一些实施例中,所述报文格式段包括帧头段、消息指令段、源设备段、目的设备段、帧序号段、内容长度段、内容段以及校验码段;所述目标报文格式段包括消息指令段、源设备段、目的设备段、帧序号段、内容长度段、内容段以及校验码段。在一些实施例中,所述第一预设数值为0x9999,所述第二预设数值为0x30。在一些实施例中,所述将所述串口编码数据加上所述预设进制的第二预设数值获得编码传输数据,以使所述编码传输数据不包含字符型数据,包括:将所述串口编码数据的每一字节分别加上16进制的0x30获得编码传输数据,以使所述编码传输数据不包含字符型数据。在一些实施例中,所述方法还包括:将所述编码传输数据通过串口发送。在一些实施例中,所述分别将所述第一拆分数据和所述第二拆分数据加上所述预设进制的第二预设数值获得第一拆分编码传输数据和第二拆分编码传输数据,以使所述第一拆分编码传输数据和所述第二拆分编码传输数据均不包含字符型数据,包括:将所述第一拆分数据和所述第二拆分数据的每一字节分别加上16进制的0x30获得第一拆分编码传输数据和第二拆分编码传输数据,以使所述第一拆分编码传输数据和所述第二拆分编码传输数据均不包含字符型数据。在一些实施例中,所述方法还包括:将所述第一拆分编码传输数据和所述第二拆分编码传输数据通过串口发送。第二方面,本专利技术实施例提供了一种串口数据编码装置,包括:获取模块,用于获取串口数据,所述串口数据包括至少一个报文格式段;转换模块,用于将目标报文格式段的串口数据转换为预设进制的串口编码数据;判断模块,用于判断所述串口编码数据是否小于或等于所述预设进制的第一预设数值;第一编码模块,用于若所述串口编码数据小于或等于所述预设进制的第一预设数值,则将所述串口编码数据加上所述预设进制的第二预设数值获得编码传输数据,以使所述编码传输数据不包含字符型数据;第二编码模块,用于若所述串口编码数据大于所述预设进制的第一预设数值,则将所述串口编码数据拆分成第一拆分数据和第二拆分数据,所述第一拆分数据和所述第二拆分数据均小于或等于所述第一预设数值,分别将所述第一拆分数据和所述第二拆分数据加上所述预设进制的第二预设数值获得第一拆分编码传输数据和第二拆分编码传输数据,以使所述第一拆分编码传输数据和所述第二拆分编码传输数据均不包含字符型数据。在一些实施例中,所述装置还包括:第一发送模块,用于将所述编码传输数据通过串口发送。在一些实施例中,所述装置还包括:第二发送模块,将所述第一拆分编码传输数据和所述第二拆分编码传输数据通过串口发送。第三方面,本专利技术实施例提供了一种嵌入式设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的方法。第四方面,本专利技术实施例提供了一种通信系统,包括:至少两个如上所述的嵌入式设备;上位机,与所述嵌入式设备通信连接。第五方面,本专利技术实施例还提供了一种非易失性计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机能够执行如上所述的方法。本专利技术实施例的有益效果是:区别于现有技术的情况下,本专利技术实施例提供的一种串口数据编码方法、装置、嵌入式设备及通信系统,通过获取串口数据,将目标报文格式段的串口数据转换为预设进制的串口编码数据,判断串口编码数据是否小于或等于预设进制的第一预设数值,若是,则将串口编码数据加上预设进制的第二预设数值获得编码传输数据,以使编码传输数据不包含字符型数据,若否,则将串口编码数据拆分成第一拆分数据和第二拆分数据,第一拆分数据和第二拆分数据均小于或等于第一预设数值,分别将第一拆分数据和第二拆分数据加上预设进制的第二预设数值获得第一拆分编码传输数据和第二拆分编码传输数据,以使第一拆分编码传输数据和第二拆分编码传输数据均不包含字符型数据。因此,本专利技术实施例通过使编码传输数据、第一拆分编码传输数据以及第二拆分编码传输数据不包含字符型数据,从而使到达目的设备的应用层的串口数据完整,提升了设备通信的可靠性。另外,通过判断串口编码数据是否小于或等于预设进制的第一预设数值,若是,则将串口编码数据加上预设进制的第二预设数值获得编码传输数据,若否,则将串口编码数据拆分成第一拆分数据和第二拆分数据,第一拆分数据和第二拆分数据均小于或等于第一预设数值,分别将第一拆分数据和第二拆分数据加上预设进制的第二预设数值获得第一拆分编码传输数据和第二拆分编码传输数据,从而限制了编码传输数据、第一拆分编码传输数据以及第二拆分编码传输数据的大小,避免产生数据溢出,使到达目的设备的应用层的串口数据正确,进一步提升了设备通信的可靠性。附图说明一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。图1是本专利技术实施例提供的一种通信系统的结构示意图;图2是本专利技术实施例提供的一种串口数据编码方法的本文档来自技高网...

【技术保护点】
1.一种串口数据编码方法,其特征在于,包括:/n获取串口数据,所述串口数据包括至少一个报文格式段;/n将目标报文格式段的串口数据转换为预设进制的串口编码数据;/n判断所述串口编码数据是否小于或等于所述预设进制的第一预设数值;/n若是,则将所述串口编码数据加上所述预设进制的第二预设数值获得编码传输数据,以使所述编码传输数据不包含字符型数据;/n若否,则将所述串口编码数据拆分成第一拆分数据和第二拆分数据,所述第一拆分数据和所述第二拆分数据均小于或等于所述第一预设数值,分别将所述第一拆分数据和所述第二拆分数据加上所述预设进制的第二预设数值获得第一拆分编码传输数据和第二拆分编码传输数据,以使所述第一拆分编码传输数据和所述第二拆分编码传输数据均不包含字符型数据。/n

【技术特征摘要】
1.一种串口数据编码方法,其特征在于,包括:
获取串口数据,所述串口数据包括至少一个报文格式段;
将目标报文格式段的串口数据转换为预设进制的串口编码数据;
判断所述串口编码数据是否小于或等于所述预设进制的第一预设数值;
若是,则将所述串口编码数据加上所述预设进制的第二预设数值获得编码传输数据,以使所述编码传输数据不包含字符型数据;
若否,则将所述串口编码数据拆分成第一拆分数据和第二拆分数据,所述第一拆分数据和所述第二拆分数据均小于或等于所述第一预设数值,分别将所述第一拆分数据和所述第二拆分数据加上所述预设进制的第二预设数值获得第一拆分编码传输数据和第二拆分编码传输数据,以使所述第一拆分编码传输数据和所述第二拆分编码传输数据均不包含字符型数据。


2.根据权利要求1所述的方法,其特征在于,当所述预设进制为16进制时,所述将目标报文格式段的串口数据转换为预设进制的串口编码数据,包括:
利用BCD码对目标报文格式段的所述串口数据进行编码;
将编码后的所述串口编码数据转换为16进制的串口编码数据。


3.根据权利要求1或2所述的方法,其特征在于,所述报文格式段包括帧头段、消息指令段、源设备段、目的设备段、帧序号段、内容长度段、内容段以及校验码段;所述目标报文格式段包括消息指令段、源设备段、目的设备段、帧序号段、内容长度段、内容段以及校验码段。


4.根据权利要求2所述的方法,其特征在于,所述第一预设数值为0x9999,所述第二预设数值为0x30。


5.根据权利要求4所述的方法,其特征在于,所述将所述串口编码数据加上所述预设进制的第二预设数值获得编码传输数据,以使所述编码传输数据不包含字符型数据,包括:
将所述串口编码数据的每一字节分别加上16进制的0x30获得编码传输数据,以使所述编码传输数据不包含字符型数据。


6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
将所述编码传输数据通过串口发送。


7.根据权利要求4所述的方法,其特征在于,所述分别将所述第一拆分数据和所述第二拆分数据加上所述预设进制的第二预设数值获得第一拆分编码传输数据和第二拆分编码传输数据,以使所述第一拆分编码传输数据和所述第二拆分编码传输数据均不包含字符型数据,包括:
将所述第一拆分数据和所述第二拆分数据的每一字节分别加上16进制的0...

【专利技术属性】
技术研发人员:牛洪芳
申请(专利权)人:深圳市道通智能航空技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1