一种基于UART串联环路网络的数据传输系统及方法技术方案

技术编号:21714237 阅读:44 留言:0更新日期:2019-07-27 19:10
本发明专利技术公开了一种基于UART串联环路网络的数据传输系统及方法,系统包括主机和若干从机,主机和若干从机中,前一级设备的TXD与后一级设备的RXD相连,最后一级从机的TXD与主机的RXD相连,构成系统环路网络,从而通过相邻设备间数据的传输,实现命令或数据在主从多机系统中主机与多个从机之间数据有效传输及通讯。本发明专利技术简化了主从多机通讯系统的连接,避免了主从多机通讯系统中仲裁复杂的问题,提供了更多可实现的主从多机通讯系统中各设备的交互方式,解决了主从多机通讯系统中的从机难以主动发送数据至系统中的问题。

A Data Transmission System and Method Based on UART Series Loop Network

【技术实现步骤摘要】
一种基于UART串联环路网络的数据传输系统及方法
本专利技术属于芯片外设接口及通讯
,具体涉及一种基于UART串联环路网络的数据传输系统及方法。
技术介绍
通用异步收发器(UniversalAsynchronousReceiver/Transmitter,UART)是常用的芯片外设接口,通过芯片的外设接口可以完成数据在芯片之间的数据传输。现有技术中的主从多机通讯系统均会综合考虑复杂度及传输效率等,以满足不同的芯片间的数据传输需求。UART作为一种简单可靠的外设接口,常用于短距离的芯片之间的串联通信。现有基于UART的主从多机通讯技术中,均存在诸如引入额外的端口或连接线而造成的硬件资源浪费、复杂且低效率的仲裁方式降低实际的总线数据传输速率等问题。
技术实现思路
本专利技术所要解决的技术问题是针对上述现有技术的不足,提供一种基于UART串联环路网络的数据传输系统及方法,兼顾数据在系统上高效且灵活传输的同时,尽可能降低主机与各从机之间的连线或仲裁复杂度。为实现上述技术目的,本专利技术采取的技术方案为:一种基于UART串联环路网络的数据传输系统,包括主机和若干从机,主机和若干从机中,前一级设备的TXD与后一级设备的RXD相连,最后一级从机的TXD与主机的RXD相连,构成系统环路网络,从而通过相邻设备间数据的传输,实现命令或数据在主从多机系统中主机与多个从机之间数据有效传输及通讯;主机由其内置CPU控制,依照主机响应机制执行各命令包的发送并接收各返回命令包,同时处理系统各设备所发出的中断;从机由接收单元、FIFO、解析单元、执行单元、中断单元、发送数据选择器和发送单元组成;接收单元用于接收由上一级与之相连的设备发来的命令或数据;FIFO用于缓存上级设备发来的数据,以解决发送单元被其他数据发送需求占用的问题;解析单元用于解析ID匹配的命令及数据;执行单元则用于执行命令或数据所要求的行为,包括ID设置,数据校验,初始化,写执行,读执行等;中断单元用于从机主动发送中断至系统,以期望获得系统中主机的响应;发送数据选择器用于选择多路数据源的发出的数据,如接收到的需直接送出的数据,执行后需送出的数据以及从机主动发出的中断数据等;发送单元用于发送需要发送的数据至环路系统上的下一级设备。为优化上述技术方案,采取的具体措施还包括:上述传输中的命令包长度保持不变时,主机可以连续发送此类命令,而不至于使环路上设备内的缓存溢出;传输中的命令包长度随命令需求而增加时,主机需等待命令包返回,才能发送下一个命令包,以避免数据拥堵。上述的命令包括环路通用命令和指定ID命令;上述的环路通用命令为主机或者从机发送一个命令后,整个环路上的设备将依次接收,执行并发送相关命令或数据至下级设备,包括ID设置,环路测试和环路初始化;上述的指定ID命令为主机或从机给指定ID的设备发送命令,环路上仅ID匹配的设备需要执行此命令,其余设备仅执行接收传递数据即可,包括指定ID初始化,指定ID写,指定ID读,指定ID读返回和中断返回。上述的ID设置命令的命令包内包含命令字,ID设置命令对环路上所有设备有效,用以完成环路上所有设备的ID设置;环路测试命令的命令包内包含命令字、包长、数据、校验码和校验返回值,环路测试命令对环路上所有设备有效,用以完成对环路连接及环路上数据传输测试;环路初始化命令的命令包内包含命令字、初始化返回值,环路初始化命令对环路上所有从设备有效,用以完成环路上所有从机设备进行初始化;指定ID初始化命令的命令包内含命令字、指定ID和初始化返回值,指定ID初始化命令对环路上指定ID从设备有效,用以完成环路上指定ID从机设备进行初始化;指定ID写命令的命令包内含命令字、包长、地址和数据,指定ID写命令对环路上指定ID从设备有效,用以完成环路上指定ID从机设备进行写数据;指定ID读命令的命令包内含命令字、包长和地址,指定ID读命令对环路上指定ID从设备有效,用以完成环路上指定ID从机设备进行读数据;指定ID读返回命令的命令包内含命令字、包长和数据,指定ID读返回命令由环路上指定ID从设备发出,用以完成返回指定ID读命令所需返回数据;中断返回命令的命令包内含命令字、包长和中断数据,中断返回命令由环路上指定ID从设备发出,用以完成返回中断包;上述的ID设置命令、环路测试命令、环路初始化命令、指定ID初始化命令、指定ID写命令、指定ID读命令、指定ID读返回命令和中断返回命令均可扩展。一种基于UART串联环路网络的数据传输方法,包括以下步骤:S1:当第一级从机0探测到空闲状态的RXD上出现下降沿时,接收单元开始接收主机发送来的命令,命令首先被存储在FIFO内;S2:读取FIFO中的命令,若ID匹配,则解析单元解析所述命令,并执行响应的命令,执行单元产生的命令或数据相较于中断数据优先被输出;若ID不匹配,则检查发送单元是否空闲,若空闲则直接被输出,相反,则等待中断数据发送完再输出;S3:后续的从机接收到从机0的命令后,依照从机0的工作方式传输命令和数据,直至最终将命令和数据返回至主机,命令执行结束。本专利技术具有以下有益效果:1.简化了主从多机通讯系统的连接。2.避免了主从多机通讯系统中仲裁复杂的问题。3.提供了更多可实现的主从多机通讯系统中各设备的交互方式。4.解决了主从多机通讯系统中的从机难以主动发送数据至系统中的问题。附图说明图1是本专利技术UART串联环路网络拓扑示意图。图2是本专利技术实施例从机的实现及与上下级设备的连接结构框图。图3是本专利技术实施例各通用环路命令包格式示意图。图4是本专利技术实施例各指定ID命令包格式示意图。具体实施方式以下结合附图对本专利技术的实施例作进一步详细描述。如图1和图2所示,本专利技术的一种基于UART串联环路网络的数据传输系统,包括主机和若干从机,主机和若干从机中,前一级设备的TXD与后一级设备的RXD相连,最后一级从机的TXD与主机的RXD相连,构成系统环路网络,从而通过相邻设备间数据的传输,实现命令或数据在主从多机系统中主机与多个从机之间数据有效传输及通讯;系统环路上的主机可以由其内置CPU进行控制,依照各命令所规定的主机响应机制,执行各命令包的发送并接收各返回命令包,同时处理系统各设备所发出的中断。主机CPU需要针对不同的命令需求执行不同的响应机制,同时发送或接收命令的过程中控制数据传输的节奏,以确保系统上的数据传输正常。从机由接收单元、FIFO、解析单元、执行单元、中断单元、发送数据选择器和发送单元组成;接收单元用于接收由上一级与之相连的设备发来的命令或数据;FIFO用于缓存上级设备发来的数据,以解决发送单元被其他数据发送需求占用的问题;解析单元用于解析ID匹配的命令及数据;执行单元则用于执行命令或数据所要求的行为,包括ID设置,数据校验,初始化,写执行,读执行等;中断单元用于从机主动发送中断至系统,以期望获得系统中主机的响应;发送数据选择器用于选择多路数据源的发出的数据,如接收到的需直接送出的数据,执行后需送出的数据以及从机主动发出的中断数据等;发送单元用于发送需要发送的数据至环路系统上的下一级设备。实施例中,整个环路上传输中的命令包长度保持不变时,主机可以连续发送此类命令,而不至于使环路上设备内的缓存溢出,这样以流水的方式传输或执行本文档来自技高网...

【技术保护点】
1.一种基于UART串联环路网络的数据传输系统,其特征在于:包括主机和若干从机,所述主机和若干从机中,前一级设备的TXD与后一级设备的RXD相连,最后一级从机的TXD与主机的RXD相连,构成系统环路网络,从而通过相邻设备间数据的传输,实现命令或数据在主从多机系统中主机与多个从机之间数据有效传输及通讯;所述主机由其内置CPU控制,依照主机响应机制执行各命令包的发送并接收各返回命令包,同时处理系统各设备所发出的中断;所述从机由接收单元、FIFO、解析单元、执行单元、中断单元、发送数据选择器和发送单元组成;所述接收单元用于接收由上一级与之相连的设备发来的命令或数据;所述FIFO用于缓存上级设备发来的数据,以解决发送单元被其他数据发送需求占用的问题;所述解析单元用于解析ID匹配的命令及数据;所述执行单元则用于执行命令或数据所要求的行为,包括ID设置,数据校验,初始化,写执行,读执行等;所述中断单元用于从机主动发送中断至系统,以期望获得系统中主机的响应;所述发送数据选择器用于选择多路数据源的发出的数据,如接收到的需直接送出的数据,执行后需送出的数据以及从机主动发出的中断数据等;所述发送单元用于发送需要发送的数据至环路系统上的下一级设备。...

【技术特征摘要】
1.一种基于UART串联环路网络的数据传输系统,其特征在于:包括主机和若干从机,所述主机和若干从机中,前一级设备的TXD与后一级设备的RXD相连,最后一级从机的TXD与主机的RXD相连,构成系统环路网络,从而通过相邻设备间数据的传输,实现命令或数据在主从多机系统中主机与多个从机之间数据有效传输及通讯;所述主机由其内置CPU控制,依照主机响应机制执行各命令包的发送并接收各返回命令包,同时处理系统各设备所发出的中断;所述从机由接收单元、FIFO、解析单元、执行单元、中断单元、发送数据选择器和发送单元组成;所述接收单元用于接收由上一级与之相连的设备发来的命令或数据;所述FIFO用于缓存上级设备发来的数据,以解决发送单元被其他数据发送需求占用的问题;所述解析单元用于解析ID匹配的命令及数据;所述执行单元则用于执行命令或数据所要求的行为,包括ID设置,数据校验,初始化,写执行,读执行等;所述中断单元用于从机主动发送中断至系统,以期望获得系统中主机的响应;所述发送数据选择器用于选择多路数据源的发出的数据,如接收到的需直接送出的数据,执行后需送出的数据以及从机主动发出的中断数据等;所述发送单元用于发送需要发送的数据至环路系统上的下一级设备。2.根据权利要求1所述的一种基于UART串联环路网络的数据传输系统,其特征在于:传输中的命令包长度保持不变时,主机可以连续发送此类命令,而不至于使环路上设备内的缓存溢出;传输中的命令包长度随命令需求而增加时,主机需等待命令包返回,才能发送下一个命令包,以避免数据拥堵。3.根据权利要求2所述的一种基于UART串联环路网络的数据传输系统,其特征在于:所述命令包括环路通用命令和指定ID命令;所述环路通用命令为主机或者从机发送一个命令后,整个环路上的设备将依次接收,执行并发送相关命令或数据至下级设备,包括ID设置,环路测试和环路初始化;所述指定ID命令为主机或从机给指定ID的设备发送命令,环路上仅ID匹配的设备需要执行此命令,其余设备仅执行接收传递数据即可,包括指定ID初始化,指定ID写,指定ID读,指定ID读返回和中断返回。4.根据权利要求3所述的一种基于UART串联环路网络的数据传输系统,其特征在于:...

【专利技术属性】
技术研发人员:李宝川鲁汉洋
申请(专利权)人:南京天数智芯科技有限公司
类型:发明
国别省市:江苏,32

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

1