UART网关数据传输方法技术

技术编号:27208458 阅读:26 留言:0更新日期:2021-01-31 12:38
本发明专利技术公开了一种UART数据传输方法,所述方法应用于UART网关通过协议转换将数据在总线网络上的不同设备之间进行传输,所述方法包括:定义UART网关报文格式,定义UART报文格式;UART网关收到UART报文时,先查找UART报文头中的uartSOP字段,然后开始接收报文内容,并同步进行字符转义译码;将uartTO字段的内容作为UART网关报文的gwTO字段,将净负载uartPayload字段的内容作为UART网关报文的负载gwPayload字段,然后将打包好的UART网关报文发送到总线网络;UART网关收到UART网关报文时,先检索gwTO字段对应的UART接口,如果没有检索到就放弃,如果检索到则按照格式化要求生成UART报文,并进一步完成转义编码,逐字节发送到对应的UART接口。本发明专利技术可以使UART配套产品方便的转接到其他总线网络,提高总线网络的兼容性,可扩展性。可扩展性。可扩展性。

【技术实现步骤摘要】
UART网关数据传输方法


[0001]本专利技术涉及UART数据传输领域,具体涉及面向UART等串行数据传输控制,主要是为UART等串行通信设备的数据传输提供协议转换及数据分发的方法。

技术介绍

[0002]UART是通用异步传输的总称,根据电平标准和拓扑结构的不同,UART又进一步细分成RS232、RS422、RS-LVDS、RS485等等。它以字符为单位进行数据传输。数据传输过程:发送器发送数据位前,先发送一个起始位,然后发送数据位和一个奇偶校验位,最后发送一个停止位作为字符结束的标志。起始位至停止位构成一帧,UART数据传输方式如图1,其中各位的定义如下:起始位:表示传输字符的开始,是持续一个比特时间的低电平数据位,紧跟在起始位之后。5~8位数据位结构成一个有效字符,传输数据时从最低位开始传输,可以由软件设置数据位的位数校验位,在数据后加1或0,作为奇校验位或者偶校验位,以校验数据传输的正确性。可由软件配置奇校验位或者偶校验位也可不设奇偶校验位停止位它是一个有效字符的结束标志,由软件设定是1位1.5位2位的高电平空闲位,线路上没有数据传输时为高电平,当没有空闲位时数据传输效率最高。
[0003]当需要把这个系统的一些配套产品平滑转接到其他总线网络时,需要考虑以下几种通信情形,如图2:UART互通连接情形,需要的通信规程如下:情形一:网络上只有单一的UART配套产品和单一的总线网络终端相互通信,UART网关把从UART接口收到的数据逐字节广播到其他总线网络上的特定端口;总线网络终端从特定端口收到广播报文,提取数据。这样,实现了UART配套产品向总线网络终端的数据传输。
[0004]总线网络终端向特定端口发送广播报文;UART网关收到广播报文,提取数据,逐字节通过UART接口发送给UART配套产品。这样,实现了总线网络终端向UART配套产品的数据传输。
[0005]情形二:网络上两个UART配套产品借助总线网络进行通信,UART网关a把从UART接口收到的数据逐字节广播到总线网络上的特定端口; UART网关b收到广播报文,提取数据,逐字节通过UART接口发送给UART配套产品。这样,实现了两个UART配套产品之间的数据传输。
[0006]情形三:网络上存在若干个UART配套产品和总线网络终端,这时数据应该是具有方向性的,特定的节点只接收特定的一部分数据,所以不能全部采用广播方式传输;数据应该具有“包”属性,避免两组字节流交替传输混合在一起时破坏数据报文的含义;UART网关上可能带有多个UART接口,应该对这些接口具有寻址功能。
[0007]而现有技术中并未出现支持UART配套产品转接到其他总线网络中时,在各种情形
下都可以互联互通方便的进行数据传输的技术方案。

技术实现思路

[0008]鉴于上述现有技术的不足,本专利技术提出了一种UART网关设备和总线网络之间进行数据转换传输的方法以及数据传输协议,以提高总线网络的兼容性,可扩展性。
[0009]根据本专利技术的一个方面,提供了一种UART数据传输方法,所述方法应用于UART网关通过协议转换将数据在总线网络上的不同设备之间进行传输,所述方法包括以下步骤:S1:定义UART网关报文格式,所述UART网关报文格式包括电平标准gwType、数据位宽、波特率、负载长度gwLen、接收通道gwFrom、发送通道gwTO、净负载gwPayload等信息;S2:定义UART报文格式,所述UART报文格式包含报文起始标记uartSOP、目的地址uartTO、净负载长度uartLen、净负载uartPayload、校验和uartCHK等信息;S3:UART网关收到UART报文时,先查找UART报文头中的uartSOP字段,然后开始接收报文内容,并同步进行字符转义译码;在收到一个完整报文之后,计算和比对校验和uartCHK,如果计算结果与报文中的校验和不一致,则表明传输过程中出现了错误,直接丢弃这个UART报文;如果校验和一致,将uartTO字段的内容作为UART网关报文的gwTO字段,将净负载uartPayload字段的内容作为UART网关报文的负载gwPayload字段,然后将打包好的UART网关报文发送到总线网络;S4:UART网关收到UART网关报文时,先检索gwTO字段对应的UART接口,如果没有检索到就放弃,如果检索到则按照转换格式要求生成UART报文,并进一步完成转义编码,逐字节发送到对应的UART接口。
[0010]进一步的,所述定义的UART网关报文格式中,电平标准包括:RS422、RS232、RS485、RS-TTL、RS-LVDS标准;数据位宽包括:5比特位,6比特位,7比特位,8比特位;波特率包括:2.4kbps、4.8kbps、9.6kbps、19.2kbps、38.4kbps、76.8kbs、115.2kbps、230.4kbps、460.8kbps、921.6kbps、1843.2kbps、3686.4kbps;负载长度:指UART负载数据的有效长度;接收通道:指硬件接收UART数据的物理通道;发送通道:指硬件发送UART数据的物理通道。
[0011]进一步的,所述定义的UART报文格式中,报文起始标记uartSOP:用0xd5表示和检测一个报文的开始,这是UART线路上报文的实际第一个字节;目的地址uartTO:指报文传输的UART目的端地址,用0xff表示发送给所有UART接口,其他取值则表示只有这个地址的UART接口才处理这个报文,其他地址即使收到了也不处理;净负载长度uartLen:报文中包含的净负载长度,取值范围为[1, 3940],当负载长度不超过127字节时用1个字节表示,数值就是负载长度;当负载长度超过127字节时用2个字节表示,第一个字节为(0x80+负载总长度/128),第二个字节为(负载总长度%128);校验和uartCHK:从第2字节开始,所有字节相加再取反。
[0012]根据本专利技术的另一个方面,提供了一种协议转换装置,包括:上行数据转换模块,用于收到UART报文时,先查找UART报文头中的uartSOP字段,然后
开始接收报文内容,并同步进行字符转义译码;在收到一个完整报文之后,计算和比对校验和uartCHK,如果计算结果与报文中的校验和不一致,则表明传输过程中出现了错误,直接丢弃这个UART报文;如果校验和一致,将uartTO字段的内容作为UART网关报文的gwTO字段,将净负载uartPayload字段的内容作为UART网关报文的负载gwPayload字段,然后将打包好的UART网关报文发送到总线网络;下行数据转换模块,用于收到UART网关报文时,先检索gwTO字段对应的UART接口,如果没有检索到就放弃,如果检索到则按照转换格式要求生成UART报文,并进一步完成转义编码,逐字节发送到对应的UART接口。
[0013]根据本专利技术的另一个方面,提供了一种UART网关,其包括所述协议转换装置。
[0014]与现有技术相比,本专利技术具有以下优点:支持以字节为传本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种UART数据传输方法,其特征在于,所述方法应用于UART网关通过协议转换将数据在总线网络上的不同设备之间进行传输,所述方法包括以下步骤:S1:定义UART网关报文格式,所述UART网关报文格式包括电平标准gwType、数据位宽、波特率、负载长度gwLen、接收通道gwFrom、发送通道gwTO、净负载gwPayload等信息;S2:定义UART报文格式,所述UART报文格式包含报文起始标记uartSOP、目的地址uartTO、净负载长度uartLen、净负载uartPayload、校验和uartCHK等信息;S3:UART网关收到UART报文时,先查找UART报文头中的uartSOP字段,然后开始接收报文内容,并同步进行字符转义译码;在收到一个完整报文之后,计算和比对校验和uartCHK,如果计算结果与报文中的校验和不一致,则表明传输过程中出现了错误,直接丢弃这个UART报文;如果校验和一致,将uartTO字段的内容作为UART网关报文的gwTO字段,将净负载uartPayload字段的内容作为UART网关报文的负载gwPayload字段,然后将打包好的UART网关报文发送到总线网络;S4:UART网关收到UART网关报文时,先检索gwTO字段对应的UART接口,如果没有检索到就放弃,如果检索到则按照格式化要求生成UART报文,并进一步完成转义编码,逐字节发送到对应的UART接口。2.如权利要求1所述的UART数据传输方法,其特征在于,所述定义的UART网关报文格式中,电平标准包括:RS422、RS232、RS485、RS-TTL、RS-LVDS标准;数据位宽包括:5比特位,6比特位,7比特位,8比特位;波特率包括:2.4kbps、4.8kbps、9.6kbps、19.2kbps、38.4kbps、76.8kbs、115.2kbps、230.4kbps、460.8kbps、921.6kbps、1843.2kbps、3686.4kbps;负载长度:指UART负载数据的有效长度;接收通道:指硬件接收UART数据的物理通道;发送通道:...

【专利技术属性】
技术研发人员:刘胜杰杨水华柳卯
申请(专利权)人:北京中航通用科技有限公司
类型:发明
国别省市:

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

1