[發明專利]一種多路串口高可靠性傳輸方法有效
| 申請號: | 201811274056.0 | 申請日: | 2018-10-30 |
| 公開(公告)號: | CN109144937B | 公開(公告)日: | 2021-08-17 |
| 發明(設計)人: | 趙斌 | 申請(專利權)人: | 天津津航計算技術研究所 |
| 主分類號: | G06F13/42 | 分類號: | G06F13/42;G06F11/30 |
| 代理公司: | 中國兵器工業集團公司專利中心 11011 | 代理人: | 祁恒 |
| 地址: | 300308 天津*** | 國省代碼: | 天津;12 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 串口 可靠性 傳輸 方法 | ||
本發明于數據傳輸技術領域,具體涉及一種多路串口高可靠性傳輸方法。本方法采用一種UART控制器冗余傳輸方案,通過設置雙路UART通道通過比對來防止數據出錯,并在系統層加入了數據監控模塊,全面監控串口的數據傳輸,對出現的狀況采取預處理方案,盡量保證數據傳輸的正確性,進一步保證串口傳輸過程中的可靠性。
技術領域
本發明屬于數據傳輸技術領域,具體涉及一種多路串口高可靠性傳輸方法。
背景技術
隨著嵌入式技術的發展,嵌入式微處理器在數據采集、工業控制、航空航天領域有著廣泛的應用。為了滿足數字化和智能化的需求,在這種以微處理器為核心的智能化測控系統中,處理器與外圍電路功能模塊、器件之間的通信大都采用簡單高效的串口通信方式。這是由于串口通信設備具有控制靈活、接口簡單、占用系統資源少的優點,且成本十分低廉,具有眾多的接口標準,協議簡單、程序設計簡單方便。
串口(UART)技術硬件的具體實物表現為獨立的模塊化芯片,或作為集成于微處理器的周邊設備。UART作為一種通用串行數據總線,用于異步通信,該總線雙向通信,可以實現全雙工傳輸和接受。處理器內部采用并行數據,不能直接把數據發送到Modem,必須經過UART整理才能進行異步傳輸,其過程如圖1所示。
UART控制器傳輸協議作為異步通信協議的一種,工作原理是將傳輸數據的每個字符一位接一位的傳輸。主要有起始位、數據位、奇偶校驗位、停止位。
目前,UART控制器的傳輸協議使用了一套底層基于UART總線的通信協議,能保證命令和數據的傳輸,但是其并沒有做冗余設計,若是由于電磁干擾或是嚴酷環境的影響,傳輸的數據產生錯誤,傳統的UART控制器傳輸協議無法監測和避免這類錯誤,這會導致接收方接收到的數據與發送方發送的數據產生不一致,從而造成不可預估的錯誤,特別是在對數據一致性要求很高的航空航天領域,進而影響了UART控制器在嚴酷環境下的可靠性。
發明內容
(一)要解決的技術問題
本發明提出一種多路串口高可靠性傳輸方法,以解決如何保證數據傳輸正確性的技術問題。
(二)技術方案
為了解決上述技術問題,本發明提出一種多路串口高可靠性傳輸方法,該傳輸方法包括如下步驟:
S1、處理器將準備寫入串行設備的數據發送到雙路UART移位寄存器中;
S2、通過數據監控模塊對雙路UART移位寄存器中的數據進行比對;
S3、若比對結果一致,將數據存入FIFO緩沖區中;若比對結果不一致,通過數據監控模塊丟棄該幀,并要求處理器重新傳輸該幀,并將此次錯誤信息記錄到系統的錯誤日志中;
S4、數據監控模塊對錯誤進行分析,對不同的錯誤維持不同的錯誤計數器,在每次錯誤檢測到后,相應的錯誤計數器上進行加1操作;
S5、當錯誤計數器超過設定的閾值時,對不同的錯誤采取不同的處理措施;其中,對于溢出錯誤,數據監控模塊通過降低波特率,降低數據傳輸速率;對于幀錯誤,數據監控模塊通過向下位機發送檢測包來查看串口是否正常連接;
S6、在沒有錯誤出現及比對結果一致后,數據監控模塊重新加載串口驅動程序再次啟動數據的傳輸;
S7、將存儲在FIFO緩沖區中的數據發送到雙路UART接收寄存器中;
S8、通過數據監控模塊將雙路UART接收寄存器中的數據傳輸到下位機。
(三)有益效果
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于天津津航計算技術研究所,未經天津津航計算技術研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811274056.0/2.html,轉載請聲明來源鉆瓜專利網。





