專利名稱:多路串行接口協(xié)議切換轉(zhuǎn)發(fā)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種多路串行接口協(xié)議切換轉(zhuǎn)發(fā)方法,用于將收到的多路串行接口協(xié)議數(shù)據(jù)通過(guò)一路串行接口進(jìn)行轉(zhuǎn)發(fā)。
背景技術(shù):
RS422串行接口是一種廣泛用于系統(tǒng)間或系統(tǒng)內(nèi)模塊間數(shù)據(jù)交換的接口,在傳統(tǒng)的嵌入式系統(tǒng)設(shè)計(jì)中,當(dāng)一個(gè)設(shè)備有N個(gè)接收串行接口,需要從外部接收N路串行接口數(shù)據(jù)并且將這N路的數(shù)據(jù)全部轉(zhuǎn)發(fā)出去就需要定義同樣數(shù)量的轉(zhuǎn)發(fā)接口,這樣實(shí)現(xiàn)方法簡(jiǎn)單,但是對(duì)軟硬件資源造成了浪費(fèi)。所以在本方法中,將所有轉(zhuǎn)發(fā)串行接口合并為一個(gè),在模塊內(nèi)進(jìn)行接收端數(shù)據(jù)處理,進(jìn)行切換轉(zhuǎn)發(fā)將多路數(shù)據(jù)通過(guò)一路串行接口發(fā)送出去。在某項(xiàng)目應(yīng)用中,通用IO模塊有兩路串行接收接口和一路串行發(fā)送接口,用來(lái)從外部?jī)陕反性O(shè)備GPS和INS接收協(xié)議數(shù)據(jù),并且需要將兩路數(shù)據(jù)通過(guò)一路串行接口轉(zhuǎn)發(fā)給通用處理模塊。系統(tǒng)要求INS數(shù)據(jù)需要實(shí)時(shí)進(jìn)行傳遞,外設(shè)發(fā)送周期為40ms,數(shù)據(jù)幀長(zhǎng)為86bytes ;GPS數(shù)據(jù)在接收到時(shí)可稍微延遲發(fā)送,外設(shè)發(fā)送GPS周期為1S,數(shù)據(jù)幀長(zhǎng)為78bytes0
發(fā)明內(nèi)容
本發(fā)明提供一種多路串行接口協(xié)議切換轉(zhuǎn)發(fā)方法,實(shí)現(xiàn)了通過(guò)一路串行接口同時(shí)轉(zhuǎn)發(fā)從GPS設(shè)備接收到的GPS數(shù)據(jù)和INS設(shè)備接收到的INS協(xié)議數(shù)據(jù),并且保證數(shù)據(jù)的完整性和實(shí)時(shí)性。本發(fā)明的目的通過(guò)下述的技術(shù)方案實(shí)現(xiàn)。多路串行接口協(xié)議切換轉(zhuǎn)發(fā)方法,包括從串行接口接收INS數(shù)據(jù)和GPS數(shù)據(jù)的流程,以及通過(guò)一路串行接口進(jìn)行INS數(shù)據(jù)和GPS數(shù)據(jù)的發(fā)送流程;具體按照以下步驟:(I)通用IO模塊收到INS數(shù)據(jù)的同時(shí)即通過(guò)硬件邏輯將INS數(shù)據(jù)經(jīng)串行接口轉(zhuǎn)發(fā)至通用處理模塊,當(dāng)收到一包完整INS數(shù)據(jù)時(shí)軟件置INS數(shù)據(jù)包完整標(biāo)志=GPS數(shù)據(jù)包完整標(biāo)志;(2)當(dāng)收到一包完整GPS數(shù)據(jù)時(shí),軟件置GPS數(shù)據(jù)包完整標(biāo)志=1 ;(3)GPS數(shù)據(jù)通過(guò)軟件控制轉(zhuǎn)發(fā),根據(jù)數(shù)據(jù)包完整標(biāo)志判斷是否收到完整的GPS數(shù)據(jù)與INS數(shù)據(jù),若是,則轉(zhuǎn)發(fā)通道從INS通道切換至GPS通道,實(shí)現(xiàn)轉(zhuǎn)發(fā)GPS數(shù)據(jù),轉(zhuǎn)發(fā)GPS數(shù)據(jù)完畢后再切換回INS通道;若否,則繼續(xù)判斷。本發(fā)明具有以下優(yōu)點(diǎn):a.采用軟硬件協(xié)同設(shè)計(jì),實(shí)現(xiàn)了兩路串行數(shù)據(jù)接收到一路輸出的切換轉(zhuǎn)發(fā)。b.實(shí)現(xiàn)簡(jiǎn)單,未增加任何硬件電路,采用可編程邏輯實(shí)現(xiàn)發(fā)送通道的切換。c.該切換轉(zhuǎn)發(fā)算法可保證高實(shí)時(shí)性要求數(shù)據(jù)的立即轉(zhuǎn)發(fā);并可擴(kuò)展至多路串口。
圖1為某項(xiàng)目功能結(jié)構(gòu)圖;圖2為INS數(shù)據(jù)接收流程示意圖;圖3為GPS數(shù)據(jù)接收流程示意圖;圖4為GPS數(shù)據(jù)發(fā)送流程。
具體實(shí)施例方式以INS數(shù)據(jù)、GPS數(shù)據(jù)的發(fā)送、接收為例,本發(fā)明的多路串行接口協(xié)議切換轉(zhuǎn)發(fā)方法,包括以下執(zhí)行步驟:a.1NS數(shù)據(jù)通過(guò)硬件邏輯實(shí)現(xiàn)直接轉(zhuǎn)發(fā),通用IO模塊收到數(shù)據(jù)同時(shí)將數(shù)據(jù)通過(guò)串行接口轉(zhuǎn)發(fā)至通用處理模塊,當(dāng)收到一包完整INS數(shù)據(jù)時(shí)置INS數(shù)據(jù)包完整標(biāo)志=GPS數(shù)據(jù)包完整標(biāo)志,處理流程見(jiàn)圖2 ;b.當(dāng)收到一包完整GPS數(shù)據(jù)時(shí),置GPS數(shù)據(jù)包完整標(biāo)志=1,處理流程見(jiàn)圖3 ;c.GPS數(shù)據(jù)通過(guò)軟件控制轉(zhuǎn)發(fā),每個(gè)流程判斷是否收到完整的GPS數(shù)據(jù)與INS數(shù)據(jù),如收到,則切換轉(zhuǎn)發(fā)開關(guān),轉(zhuǎn)發(fā)GPS數(shù)據(jù);否則繼續(xù)判斷。處理流程見(jiàn)圖4。采用以上方案,可保證GPS、INS數(shù)據(jù)實(shí)時(shí)、完整的發(fā)送至通用處理模塊,由條件“INS數(shù)據(jù)包完整標(biāo)志=GPS數(shù)據(jù)包完整標(biāo)志”和發(fā)送GPS數(shù)據(jù)條件“INS數(shù)據(jù)包完整標(biāo)志==1,GPS數(shù)據(jù)包完整標(biāo)志==1”可知發(fā)送GPS數(shù)據(jù)時(shí)機(jī)為在收到GPS完整數(shù)據(jù)包之后再收到一包完整INS數(shù)據(jù)時(shí),此時(shí)發(fā)送GPS數(shù)據(jù)條件滿足,且剛發(fā)送完INS數(shù)據(jù),40ms之后才會(huì)接收到新的INS數(shù)據(jù),發(fā)送通道處于空閑,切換至GPS通道,發(fā)送GPS數(shù)據(jù),根據(jù)串口設(shè)置,波特率為1Mbps,發(fā)送78字節(jié)需要時(shí)間為0.78ms,所以不會(huì)耽誤INS數(shù)據(jù)接收,方案可行。由于INS數(shù)據(jù)實(shí)時(shí)發(fā)送,GPS最壞的情況為收到GPS數(shù)據(jù)40ms之后收到完整的INS數(shù)據(jù),即GPS數(shù)據(jù)發(fā)送最大延遲為40ms,滿足系統(tǒng)需求。
權(quán)利要求
1.多路串行接口協(xié)議切換轉(zhuǎn)發(fā)方法,包括從串行接口接收INS數(shù)據(jù)和GPS數(shù)據(jù)的流程,以及通過(guò)一路串行接口進(jìn)行INS數(shù)據(jù)和GPS數(shù)據(jù)的發(fā)送流程;具體按照以下步驟: (1)通用IO模塊收到INS數(shù)據(jù)的同時(shí)即通過(guò)硬件邏輯將INS數(shù)據(jù)經(jīng)串行接口轉(zhuǎn)發(fā)至通用處理模塊,當(dāng)收到一包完整INS數(shù)據(jù)時(shí)軟件置INS數(shù)據(jù)包完整標(biāo)志=GPS數(shù)據(jù)包完整標(biāo)志; (2)當(dāng)收到一包完整GPS數(shù)據(jù)時(shí),軟件置GPS數(shù)據(jù)包完整標(biāo)志=1; (3)GPS數(shù)據(jù)通過(guò)軟件控制轉(zhuǎn)發(fā),根據(jù)數(shù)據(jù)包完整標(biāo)志判斷是否收到完整的GPS數(shù)據(jù)與INS數(shù)據(jù),若是,則轉(zhuǎn)發(fā)通道從INS通道切換至GPS通道,實(shí)現(xiàn)轉(zhuǎn)發(fā)GPS數(shù)據(jù),轉(zhuǎn)發(fā)GPS數(shù)據(jù)完畢后再切換回INS通道;若否,則繼續(xù)判斷。
全文摘要
本發(fā)明提供一種多路串行接口協(xié)議切換轉(zhuǎn)發(fā)方法。該方法包括以下步驟通用IO模塊收到INS數(shù)據(jù)同時(shí)將INS數(shù)據(jù)通過(guò)串行接口轉(zhuǎn)發(fā)至通用處理模塊,當(dāng)收到一包完整INS數(shù)據(jù)時(shí)置INS數(shù)據(jù)包完整標(biāo)志=GPS數(shù)據(jù)包完整標(biāo)志;當(dāng)收到一包完整GPS數(shù)據(jù)時(shí),置GPS數(shù)據(jù)包完整標(biāo)志=1;GPS數(shù)據(jù)通過(guò)軟件控制轉(zhuǎn)發(fā),判斷是否收到完整的GPS數(shù)據(jù)與INS數(shù)據(jù),如收到,則切換轉(zhuǎn)發(fā)開關(guān),轉(zhuǎn)發(fā)GPS數(shù)據(jù);否則繼續(xù)判斷。本發(fā)明實(shí)現(xiàn)了通過(guò)一路串行接口同時(shí)轉(zhuǎn)發(fā)GPS和INS協(xié)議數(shù)據(jù),并且保證數(shù)據(jù)的完整性和實(shí)時(shí)性。
文檔編號(hào)H04L29/06GK103078849SQ201210579919
公開日2013年5月1日 申請(qǐng)日期2012年12月27日 優(yōu)先權(quán)日2012年12月27日
發(fā)明者何立軍, 吳超, 高毅, 蔣欣, 石海洋 申請(qǐng)人:中國(guó)航空工業(yè)集團(tuán)公司第六三一研究所