【技术实现步骤摘要】
一种多路串口高可靠性传输方法
本专利技术属于数据传输
,具体涉及一种多路串口高可靠性传输方法。
技术介绍
随着嵌入式技术的发展,嵌入式微处理器在数据采集、工业控制、航空航天领域有着广泛的应用。为了满足数字化和智能化的需求,在这种以微处理器为核心的智能化测控系统中,处理器与外围电路功能模块、器件之间的通信大都采用简单高效的串口通信方式。这是由于串口通信设备具有控制灵活、接口简单、占用系统资源少的优点,且成本十分低廉,具有众多的接口标准,协议简单、程序设计简单方便。串口(UART)技术硬件的具体实物表现为独立的模块化芯片,或作为集成于微处理器的周边设备。UART作为一种通用串行数据总线,用于异步通信,该总线双向通信,可以实现全双工传输和接受。处理器内部采用并行数据,不能直接把数据发送到Modem,必须经过UART整理才能进行异步传输,其过程如图1所示。UART控制器传输协议作为异步通信协议的一种,工作原理是将传输数据的每个字符一位接一位的传输。主要有起始位、数据位、奇偶校验位、停止位。目前,UART控制器的传输协议使用了一套底层基于UART总线的通信协议,能保证命令和数据的传输,但是其并没有做冗余设计,若是由于电磁干扰或是严酷环境的影响,传输的数据产生错误,传统的UART控制器传输协议无法监测和避免这类错误,这会导致接收方接收到的数据与发送方发送的数据产生不一致,从而造成不可预估的错误,特别是在对数据一致性要求很高的航空航天领域,进而影响了UART控制器在严酷环境下的可靠性。
技术实现思路
(一)要解决的技术问题本专利技术提出一种多路串口高可靠性传输方法,以 ...
【技术保护点】
1.一种多路串口高可靠性传输方法,其特征在于,所述传输方法包括如下步骤:S1、处理器将准备写入串行设备的数据发送到双路UART移位寄存器中;S2、通过数据监控模块对双路UART移位寄存器中的数据进行比对;S3、若比对结果一致,将数据存入FIFO缓冲区中;若比对结果不一致,通过数据监控模块丢弃该帧,并要求处理器重新传输该帧,并将此次错误信息记录到系统的错误日志中;S4、数据监控模块对错误进行分析,对不同的错误维持不同的错误计数器,在每次错误检测到后,相应的错误计数器上进行加1操作;S5、当错误计数器超过设定的阈值时,对不同的错误采取不同的处理措施;其中,对于溢出错误,数据监控模块通过降低波特率,降低数据传输速率;对于帧错误,数据监控模块通过向下位机发送检测包来查看串口是否正常连接;S6、在没有错误出现及比对结果一致后,数据监控模块重新加载串口驱动程序再次启动数据的传输;S7、将存储在FIFO缓冲区中的数据发送到双路UART接收寄存器中;S8、通过数据监控模块将双路UART接收寄存器中的数据传输到下位机。
【技术特征摘要】
1.一种多路串口高可靠性传输方法,其特征在于,所述传输方法包括如下步骤:S1、处理器将准备写入串行设备的数据发送到双路UART移位寄存器中;S2、通过数据监控模块对双路UART移位寄存器中的数据进行比对;S3、若比对结果一致,将数据存入FIFO缓冲区中;若比对结果不一致,通过数据监控模块丢弃该帧,并要求处理器重新传输该帧,并将此次错误信息记录到系统的错误日志中;S4、数据监控模块对错误进行分析,对不同的错误维持不同的错误计数器,在每次错误检测到后,相应...
【专利技术属性】
技术研发人员:赵斌,
申请(专利权)人:天津津航计算技术研究所,
类型:发明
国别省市:天津,12
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。