国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于rs-422串行總線技術(shù)的數(shù)據(jù)可靠交互方法

      文檔序號:9810487閱讀:878來源:國知局
      一種基于rs-422串行總線技術(shù)的數(shù)據(jù)可靠交互方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明屬于通信技術(shù)領(lǐng)域,特別涉及一種基于RS-422串行總線技術(shù)的數(shù)據(jù)可靠交互方法。
      【背景技術(shù)】
      [0002]在嵌入式系統(tǒng)中,通常將等待調(diào)試或接收數(shù)據(jù)的目標(biāo)系統(tǒng)稱為下位機,而與其對應(yīng)的調(diào)試或發(fā)送數(shù)據(jù)的目標(biāo)系統(tǒng)稱為上位機。上位機通過通信來實現(xiàn)對下位機的控制。
      [0003]嵌入式系統(tǒng)在航空航天領(lǐng)域中得到了廣泛的應(yīng)用。航空航天領(lǐng)域中的上位機與下位機一般通過RS-422串行總線技術(shù)實現(xiàn)通信,通過通用異步接收/發(fā)送裝置緩存進(jìn)行數(shù)據(jù)傳輸,通用異步接收/發(fā)送裝置的緩存結(jié)構(gòu)是采用先入先出隊列(First Input First0utput,F(xiàn)IF0)實現(xiàn)。傳輸數(shù)據(jù)時,在需要傳輸?shù)臄?shù)據(jù)頭處添加固定指向數(shù)據(jù)(例如“00”)作為幀頭,表明該數(shù)據(jù)為一個新的需要傳輸?shù)臄?shù)據(jù)的開始,在數(shù)據(jù)尾處用添加固定指向數(shù)據(jù)(例如“FD作為幀尾,表明該數(shù)據(jù)已完整傳輸。
      [0004]但是,由于固定指向數(shù)據(jù)(例如“00”、“FF”)為十六進(jìn)制數(shù),當(dāng)需要傳輸?shù)臄?shù)據(jù)中出現(xiàn)與固定指向數(shù)據(jù)相同的數(shù)據(jù)時,系統(tǒng)會認(rèn)為數(shù)據(jù)已經(jīng)傳輸完畢或有新的數(shù)據(jù)幀需要傳輸,造成通信錯誤。且航空航天領(lǐng)域應(yīng)用場合存在復(fù)雜的電磁環(huán)境,串行總線在傳輸過程中容易受到外界干擾導(dǎo)致丟幀現(xiàn)象,使傳輸數(shù)據(jù)的完整性受到破壞。如果一旦出現(xiàn)傳輸錯誤,會導(dǎo)致嚴(yán)重的系統(tǒng)故障。因此,現(xiàn)有技術(shù)中的數(shù)據(jù)傳輸方法具有局限性。
      [0005]隨著數(shù)字處理器技術(shù)的發(fā)展,嵌入式系統(tǒng)的控制規(guī)律日益復(fù)雜、控制變量日益增多、控制精度要求越來越高。要求上位機與下位機可同時實現(xiàn)多狀態(tài)的交互,在保證通信可靠性的基礎(chǔ)上盡可能的提高通信速度。
      [0006]為解決通信中易受干擾的問題?,F(xiàn)有技術(shù)中,一般通過采用較低的波特率來降低的電平變化頻率,從而實現(xiàn)削弱干擾影響,減少上位機與下位機通訊中錯誤的目的。但是較低的波特率會降低數(shù)據(jù)單位傳輸量,將影響系統(tǒng)整體的動態(tài)性能,而且這種做法對于提高通信可靠性的效果也很有限。

      【發(fā)明內(nèi)容】

      [0007]要解決的技術(shù)問題
      [0008]為了避免現(xiàn)有技術(shù)的不足之處,本發(fā)明提出一種基于RS-422串行總線技術(shù)的數(shù)據(jù)可靠交互方法。
      [0009]技術(shù)方案
      [0010]—種基于RS-422串行總線技術(shù)的數(shù)據(jù)可靠交互方法,其特征在于:上位機與下位機通信的數(shù)據(jù)幀格式依次排列為:幀頭、幀標(biāo)簽、幀類型、幀長度、幀信息、幀校驗和幀尾;所述幀頭為雙幀頭,第一個幀頭用來表明該數(shù)據(jù)為一個新的需要傳輸?shù)臄?shù)據(jù)的開始,第二個幀頭來校驗,以防數(shù)據(jù)中偶然出現(xiàn)與第一個幀頭相同的數(shù)據(jù)而被下位機誤認(rèn)為新的數(shù)據(jù)幀;所述幀標(biāo)簽:前段字節(jié)表示幀計數(shù),后段字節(jié)表示時間標(biāo)簽構(gòu)成以表明幀的唯一性;所述幀類型包括:參數(shù)、時序和指令,用于區(qū)分?jǐn)?shù)據(jù)幀的類別;所述幀標(biāo)簽:前段字節(jié)表示幀計數(shù),后段字節(jié)表示時間標(biāo)簽構(gòu)成以表明幀的唯一性;所述幀長度:數(shù)據(jù)區(qū)的字節(jié)數(shù)加上固定字節(jié)數(shù);所述幀信息:上位機與下位機具體的通信內(nèi)容;所述幀校驗:對發(fā)送的數(shù)據(jù)進(jìn)行校驗,檢驗數(shù)據(jù)傳輸是否出現(xiàn)錯誤;所述幀尾:表明該數(shù)據(jù)已完整傳輸;上位機與下位機的數(shù)據(jù)交互步驟如下:
      [0011]步驟1:上位機編寫幀信息并選擇幀類型,按照數(shù)據(jù)幀格式添加幀頭和幀尾,計算幀信息長度在幀長度格式位添加幀長度,將當(dāng)前系統(tǒng)時間添加于幀標(biāo)簽位上,循環(huán)冗余檢查幀標(biāo)簽、幀類型及幀信息的數(shù)據(jù),并將得到的結(jié)果作為幀校驗數(shù)據(jù),完成數(shù)據(jù)幀的完整拼接;
      [0012]步驟2:上位機完成所有數(shù)據(jù)幀的拼接后對數(shù)據(jù)幀進(jìn)行發(fā)送,同時上位機構(gòu)建發(fā)送緩存,將發(fā)送的數(shù)據(jù)幀副本保存在發(fā)送緩存中;
      [0013]步驟3:下位機接收到數(shù)據(jù)幀后,首先按照協(xié)議對幀頭進(jìn)行校驗,如果幀頭校驗未通過,則丟棄接收到數(shù)據(jù);如果通過,則對接收的數(shù)據(jù)進(jìn)行循環(huán)冗余檢查,其結(jié)果與接收到的幀校驗數(shù)據(jù)進(jìn)行CRC-32校驗;
      [0014]步驟4:當(dāng)CRC-32校驗通過后,下位機向上位機反饋應(yīng)答幀,表示數(shù)據(jù)幀已經(jīng)收到,上位機接收到應(yīng)答幀后,刪除緩存中的對應(yīng)的數(shù)據(jù)幀副本;如果CRC-32校驗未通過,則丟棄接收到的數(shù)據(jù),不向上位機反饋應(yīng)答幀;所述應(yīng)答幀中主要返回數(shù)據(jù)幀中的幀標(biāo)簽;
      [0015]步驟5:下位機在CRC-32校驗后,通過檢查是否已經(jīng)接收到相同的幀標(biāo)簽進(jìn)行重復(fù)幀校驗,如果重復(fù)幀校驗通過,將該數(shù)據(jù)幀的幀標(biāo)簽保存在下位機中;如果下位機中已經(jīng)存在相同的幀標(biāo)簽,則表明已經(jīng)接收到該數(shù)據(jù)幀,則將其丟棄,開始接收新的數(shù)據(jù)幀;
      [0016]步驟6:以上三個檢驗都通過后,下位機按照幀類型解析數(shù)據(jù)幀,如果幀類型為時序或參數(shù),則將其添加到對應(yīng)的鏈表中;如果為指令,則執(zhí)行相應(yīng)的任務(wù);
      [0017]步驟7:重復(fù)步驟I?步驟6;當(dāng)發(fā)送完所有數(shù)據(jù)幀后,檢查發(fā)送緩存是否為空,如果為空,則結(jié)束發(fā)送,如果不為空,則將發(fā)送緩存中的數(shù)據(jù)幀發(fā)送出去,直至其為空后,結(jié)束發(fā)送。
      [0018]當(dāng)緩存未被存滿時,上位機發(fā)送完一幀數(shù)據(jù)后,不用等待下位機的應(yīng)答幀,繼續(xù)發(fā)送下一幀數(shù)據(jù);如果緩存被存滿,則暫停發(fā)送新的數(shù)據(jù)幀,將緩存中的數(shù)據(jù)再次重新發(fā)送出去后,再發(fā)送新的數(shù)據(jù)幀。
      [0019]有益效果
      [0020]本發(fā)明提出的一種基于RS-422串行總線技術(shù)的數(shù)據(jù)可靠交互方法,結(jié)合連續(xù)自動重傳請求(Auto Repeat reQuest,ARQ)協(xié)議,提出了一種新穎的基于RS-422串行總線技術(shù)的數(shù)據(jù)交互及校驗方法。本發(fā)明方法的上位機與下位機之間存在應(yīng)答機制,及重復(fù)幀校驗,提高了通信的可靠性。而且,上位機不必接收到下位機發(fā)送的應(yīng)答幀后,再發(fā)送下一數(shù)據(jù)幀。而是可以連續(xù)發(fā)送若干個數(shù)據(jù)幀,在發(fā)送數(shù)據(jù)幀的同時將其副本保存在發(fā)送緩存中,上位機接收到應(yīng)答幀后刪除緩存中對應(yīng)的數(shù)據(jù)幀副本。直到未收到應(yīng)答幀的數(shù)據(jù)幀積累到一定數(shù)量后,再停下來重發(fā)緩存中的數(shù)據(jù)幀副本??擅黠@提高了信道的利用率和通信速度。本發(fā)明針對嵌入式系統(tǒng)的特征,上位機與下位機通信的數(shù)據(jù)幀中增加信息類型的識別碼,可同時實現(xiàn)嵌入式系統(tǒng)多時序,參數(shù),任務(wù)指令的通信。
      [0021]本發(fā)明能夠達(dá)到如下效果:
      [0022]1、上位機與下位機之間增加應(yīng)答機制,下位機采用重復(fù)幀校驗,提高了通信的可靠性;
      [0023]2、使用連續(xù)ARQ協(xié)議,提高了上位機與下位機的通信速度及信道利用率;
      [0024]3、上位機與下位機通信中增加信息類型的識別碼,可同時實現(xiàn)多時序、多參數(shù)、及任務(wù)指令的通信。
      【附圖說明】
      [0025]圖1: 一般方法的通信數(shù)據(jù)幀格式
      [0026]圖2:本發(fā)明的通信數(shù)據(jù)幀格式
      [0027]圖3:上位機發(fā)送數(shù)據(jù)幀示意圖
      [0028]圖4:下位機接收數(shù)據(jù)幀示意圖
      【具體實施方式】
      [0029]現(xiàn)結(jié)合實施例、附圖對本發(fā)明作進(jìn)一步描述:
      [0030]—般的上位機與下位機通信方法,傳輸數(shù)據(jù)時,在需要傳輸?shù)臄?shù)據(jù)頭處添加幀頭,表明該數(shù)據(jù)為一個新的需要傳輸?shù)臄?shù)據(jù)的開始,在數(shù)據(jù)尾處用添加幀尾,表明該數(shù)據(jù)已完整傳輸,以此實現(xiàn)上位機與下位機的通信。一般上位機與下位機中的數(shù)據(jù)幀格式如圖1所不O
      [0031]傳統(tǒng)的通信方式顯然不能實現(xiàn)多種類型數(shù)據(jù)的通信。為滿足發(fā)動機燃油供應(yīng)系統(tǒng)多種類型數(shù)據(jù)的通信需求,及實現(xiàn)在較強電磁干擾的環(huán)境中可靠通信的目的。
      [0032]本發(fā)明重新設(shè)計了上位機與下位機通信的數(shù)據(jù)幀格式,具體數(shù)據(jù)幀格式如圖2所示。其中各字段的含義如下,幀頭:本發(fā)明的幀頭為雙幀頭,第一個幀頭用來表明該數(shù)據(jù)為一個新的需要傳輸?shù)臄?shù)據(jù)的開始,第二個幀頭來校驗,以防數(shù)據(jù)中偶然出現(xiàn)與第一個幀頭相同的數(shù)據(jù)而被下位機誤認(rèn)為新的數(shù)據(jù)幀;幀標(biāo)簽:前段字節(jié)表示幀計數(shù),后段字節(jié)表示時間標(biāo)簽構(gòu)成,表明幀的唯一性;幀類型包括:參數(shù)、時序和指令,用于區(qū)分?jǐn)?shù)據(jù)幀的類別;幀長度:數(shù)據(jù)區(qū)的字節(jié)數(shù)加上固定字節(jié)數(shù);幀信息:上位機與下位機具體的通信內(nèi)容;幀校驗:對發(fā)送的數(shù)據(jù)進(jìn)行校驗,檢驗數(shù)據(jù)傳輸是否出現(xiàn)錯誤;幀尾與一般方法中幀尾的意義一樣,表明該數(shù)據(jù)已完整傳輸。
      [0033]當(dāng)使用者需要通過上位機對下位機進(jìn)行指令控制或下載時序/參數(shù)時,使用者根據(jù)實際控制需求,按照圖2中的通信數(shù)據(jù)幀格式編寫通信的幀信息,及選擇對應(yīng)的幀類型,上位機根據(jù)自動添加幀頭、幀尾、幀信息、幀長度,對包括幀標(biāo)簽、幀類型、幀長度及幀信息在內(nèi)的數(shù)據(jù)進(jìn)行循環(huán)冗余檢查,將得到的結(jié)果作為幀校驗數(shù)據(jù)。然后通過連續(xù)ARQ協(xié)議將數(shù)據(jù)幀發(fā)送給下位機,實現(xiàn)通信。整個過程涉及到數(shù)據(jù)幀的解析、校驗及重發(fā)技術(shù)。下面分別對上位機和下位機的工作過程作出詳細(xì)說明:
      [0034]對于上位機:
      [0035]—、使用者編寫幀信息、選擇幀類型后,上位機按照協(xié)議添加幀頭、幀尾,計算使用者編寫的幀信息長度得到幀長度,按照幀計數(shù)及當(dāng)前系統(tǒng)時間添加幀標(biāo)簽,對包括幀標(biāo)簽、幀類型及幀信息在內(nèi)的
      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1