一種有無線模塊的發(fā)射裝置外場測試儀設計
3 軟件設計
3.1 DSP程序設計
3.1.1 DSP程序流程
DSP2407的程序主要分為初始化、接收座艙指令、測試發(fā)射裝置及上報測試結果4個階段:初始化時,DSP要為無線模塊設置通信地址,設置好則表示DSP與單片機正常握手。接收指令和上報結果階段,DSP通過串口接收和發(fā)送數(shù)據(jù)。在上述階段,DSP通過I/O口切換繼電器,保證DSP串口與單片機串口保持連通。軟件流程如圖4所示。本文引用地址:http://2s4d.com/article/192763.htm
3.1.2 無線數(shù)據(jù)格式設置
DSP通過串口讀寫無線通訊的數(shù)據(jù),為保證數(shù)據(jù)傳輸?shù)目煽啃裕贫艘韵乱?guī)則:(1)數(shù)據(jù)以打包形式傳輸,每個數(shù)據(jù)包有同步頭、數(shù)據(jù)包頭和包數(shù)據(jù)3部分。(2)數(shù)據(jù)按照主機字節(jié)序(小端模式)存放。(3)數(shù)據(jù)傳輸采用流方式,通過同步字查找數(shù)據(jù)包頭。(4)在數(shù)據(jù)包中添加2 Byte的校驗和,通過校驗和判斷數(shù)據(jù)包是否有效。數(shù)據(jù)包格式如表1所示。
(1)包類型。包類型代表該數(shù)據(jù)包的狀態(tài),共分為4類:單片機與DSP握手時,DSP發(fā)給單片機數(shù)據(jù)的包類型為01,單片機返回數(shù)據(jù)的包類型為02;無線模塊間通訊時,控制命令和測試結果等數(shù)據(jù)的包類型為05,測試儀查出發(fā)射裝置故障時,需向座艙傳輸故障的總線數(shù)據(jù),該數(shù)據(jù)的包類型定義為06。
(2)校驗和。校驗和占2 Byte,采用二進制反碼求和算法計算。該算法廣泛應用于IP/TCP/UDP等校驗和的計算中,具體步驟為:(1)將數(shù)據(jù)包的校驗和字段置為0。(2)將數(shù)據(jù)看作以16位為單位的字組成,依次進行二進制反碼求和。(3)將得到的結果存入校驗和字段中。
接收時按步驟(2)計算數(shù)據(jù)包,若得出校驗和為0,則數(shù)據(jù)包是正確的。反之,數(shù)據(jù)包發(fā)生錯誤。
(3)包數(shù)據(jù)。是傳輸?shù)臏y試數(shù)據(jù),長度是包長度減去包頭的4 Byte,格式為:掛點號(1 Byte)+數(shù)據(jù)。其中,DSP在初始化中為無線模塊設置地址時,包數(shù)據(jù)只含掛點號,后面就無數(shù)據(jù)。
3.2 單片機程序設計
3.2.1 nRF905芯片配置
nRF905內(nèi)部有多個配置寄存器,單片機可在待機模式下通過SPI對寄存器進行配置。其重要參數(shù)設置如下:
(1)頻點。根據(jù)頻點選擇電路采集結果,單片機設置寄存器中的參數(shù)CH_NO和HFREQ_PLL,在902.2、902.7或927.8 MHz 3者中選擇通訊頻點。
(2)功率。參數(shù)PA_PWR設為00,代表輸出功率為10 dBm。
(3)接收和發(fā)送的地址及數(shù)據(jù)。本設計使用掛點號作為通訊地址,因掛點號可用1 Byte表示,故設置參數(shù)RX_AFW和TX_AFW為001,即接收和發(fā)送地址寬度為1 Byte。就接收而言,單片機與DSP握手時,DSP將測試儀所在掛點號發(fā)送至單片機,此為接收地址,單片機將其寫入RX_AD DRESS參數(shù)。因飛機下達的指令碼只占1 Byte,故接收數(shù)據(jù)寬度參數(shù)RX_PW設為000001,即1 Byte。發(fā)送時,測試儀要向座艙返回測試信息,發(fā)送地址TX_ADDRESS設為0掛點。發(fā)送數(shù)據(jù)的寬度TX_PW根據(jù)每次發(fā)送數(shù)據(jù)包的長度進行設置。
3.2.2 單片機程序流程
單片機程序?qū)崿F(xiàn)配置nRF905芯片和控制數(shù)據(jù)收發(fā)的功能,主要包括以下4個步驟:
(1)單片機與DSP握手,通過串口接收掛點號。
(2)單片機通過SPI接口對nRF905進行器件配置。
設置頻點、輸出功率及接收發(fā)送地址等信息。(3)設置nRF905為接收模式。接收座艙指令后,校驗數(shù)據(jù)包并傳至DSP。(4)接收DSP的測試結果,打包后經(jīng)無線傳遞給座艙。
4 結束語
發(fā)射裝置外場測試儀裝有無線模塊后,飛機座艙可遠距離控制外場測試儀,省去了座艙和地面地勤人員配合操作測試儀的過程,簡化了測試程序;多個發(fā)射裝置可并行測試,提高了測試效率。另外,無線模塊的使用省去了顯示屏和多個開關,同時測試儀體積變小、重量減輕,方便了運輸和使用。
評論