• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 基于LPC2210的ARINIC429總線測試裝置研究

    基于LPC2210的ARINIC429總線測試裝置研究

    作者: 時間:2016-11-20 來源:網絡 收藏
      ARINIC429航空總線簡介

      ARINIC429總線是上個世紀80年代商務飛機所廣泛使用的一種航空總線。其信息內容綜合了200多種航空參數,主要是為了解決航空設備中點對點的數據交互。

    本文引用地址:http://www.czjhyjcfj.com/article/201611/319042.htm

      ARINIC429總線數據編碼方式可以劃分為二進制位數據編碼(BNR)和二到十進制8421編碼(BCD),使用32位的雙極性非遞歸“1”“0”組成,其中最高32位為奇偶校驗位,每一幀的尾部加上4位靜寂間隔位,碼速率分為100Kbps和12.5Kbps兩種。一般正常情況下接收端電平為+6V。+5V~+13V被認為是邏輯“高”;-6.5V~-13V被認為是邏輯“低”;-2.5V~+2.5V被認為是邏輯“空”,為數據無效狀態。

      每一幀ARINIC429數據都由五個部分組成,分別為:標號(LABEL)、識別符(SDI)、數據域(DATA)、符號矩陣狀態位(SSM)和奇偶校驗位(P)。具體意義為:

      標號(LABEL): ARINIC429總線數據對每一個航空參數都規定了一成不變的標號,如真空速度標號永遠是230。

      識別符(SDI):標識數據來自什么數據源,發往哪個目的設備。

      數據域(DATA):用于具體說明參數值,使用BCD或BNR編碼填充。

      符號矩陣狀態位(SSM):說明數據屬性和發送裝置的工作狀態。

      奇偶校驗位(P):ARINIC429數據的奇數校驗。

      硬件設計說明

      如圖1所示為ARINIC429總線接收測試裝置原理框圖,整個設備設計了兩路ARINIC429總線收發通道。可以同時發送2路ARINIC429信號,中斷接收4路ARINIC429信號。

      

      圖1 接收測試裝置原理框圖

      裝置核心處理器采用了ARM7T內核的LPC2210。LPC2210具有開放式外部總線結構和JTAG下載調試仿真功能,支持ADS1.2開發環境仿真下載,這些都極大地方便了用戶對于實際產品的開發。芯片內部集成16K的RAM,144引腳LQPF封裝。外圍3.3V供電,核電壓1.8V。外部還集成了I2C、PWM、UART等接口總線。

      如圖2所示,LPC2210使用了11.0592MHz晶振,經過內部PLL控制寄存器,倍頻成為60MHz以上的時鐘主頻。外部存儲總線上配置了一片4Mb的SRAM(IS61VL25616編址Ox80000000- Ox8007ffff)和1片16Mb的FLASH(SST39VF160編址Ox81000000- Ox811fffff)。為了方便調試,LPC2210的CE0和CE1片選都加了跳針。如圖3所示。調試時程序代碼映射到片外SRAM中運行,產品定型后,將程序固化到片外的FLASH運行。系統的總線寬度BOOT[1:0]由跳線控制。

      

      圖2 LPC2210處理器部分原理框圖

      

      圖3 外部存儲器件原理圖

      整個ARINIC429發送環節由HS3182和HS3282器件組成一個ARINIC429收發通道。HS3282是ARINIC429的協議芯片,HS3182是ARINIC429物理層的驅動芯片,工作時需要±15V的差動電壓。LPC2210通過一片可編程邏輯器件EPM3064ATC100-6對處理器的數據線、地址線進行編址,并訪問外部HS3282芯片。由于LPC2210引腳接口電壓為+3.3V,而可編程邏輯器件等其它外圍器件I/O引腳電壓是+5V,因此每一個引腳串接了一個470W電阻,進行電路保護。EPM3064ATC100-6具體邏輯設計如圖4描述。

      

      圖4 HS3282邏輯控制框圖

      LPC2210片選CE3用作地址的鎖存控制信號,地址通過鎖存器后開始進行邏輯譯碼。分別使HS3282的CWSTR(命令字讀寫)、LD1、LD2(發送使能)等關鍵控制信號有效,完成對ARINIC429收發的時序使能操作。LPC2210數據總線直接連接HS3282的數據線。此外,EPM3064ATC100-6還將外部一個4MHz的時鐘源分頻成為兩路1MHz的時鐘供HS3282芯片使用。HS3282發送出TTL電平的信號驅動HS3182,將信號電壓抬升至符合ARINIC429總線要求的標準。HS3182工作時需要+15V、-15V電壓。

      為了便于同用戶的交互測試,裝置設計了LCD顯示屏和操縱鍵盤。LPC2210的片選CE2編址控制一塊240×128點陣T6963控制器的單色液晶顯示屏,其接口原理如圖5所示,命令字和數據字編址分別為0x82000002、0x82000000。LPC2210操縱T6963控制器進行點陣式的圖形顯示。

      

      圖5 LCD顯示器接口原理圖

      軟件設計

      本測試裝置的軟件設計主要流程圖如圖6所示。

      

      圖6 軟件流程圖

      一些主要環節的代碼如下:

      #include "config.h"

      #define t6963COM (*((volatile uint8 *)0x82000002))

      #define t6963DAT (*((volatile uint8 *)0x82000000))

      #define CHA_ld1 (*((volatile uint8 *)0x83000000))

      #define CHA_ld2 (*((volatile uint8 *)0x83000002))

      #define CHA_cwstr (*((volatile uint16 *)0x83000004))

      #define CHA_oe1 (*((volatile uint8 *)0x83000006))

      #define CHA_oe2 (*((volatile uint8 *)0x83000008))

      #define CHB_ld1 (*((volatile uint8 *)0x8300000A))

      #define CHB_ld2 (*((volatile uint8 *)0x8300000C))

      #define CHB_cwstr (*((volatile uint16 *)0x8300000E))

      #define CHB_oe1 (*((volatile uint8 *)0x83000010))

      #define CHB_oe2 (*((volatile uint8 *)0x83000012))

      ……

      /*通道A數據發送*/

      CHA_ld1 = 429data1;/*高字*/

      CHA_ld2 = 429data2;/*低字*/

      /*寫入6963命令字節*/

      void wirteT6963com(uint8 com){

      t6963COM = com;

      結語

      整個測試裝置采用直流+28V機載電源供電,配備+24V備用電源接口,內部集成DC-DC電源模塊進行變壓,產生+5V、±15V電壓供硬件電路使用,功耗5.2W,滿足國家軍事標準機載B類設備的電源特性要求。通過尖峰沖擊、過壓和欠壓浪涌等電源特性的考核,精度滿足多數外場測試的要求。■

      參考文獻

      1. 周立功.ARM嵌入式系統基礎教程.北京航空航天大學出版社

      2. 周立功.ARM嵌入式系統軟件開發實例.北京航空航天大學出版社

      3. LPC2210數據手冊

      4. EPM3000A系列數據手冊



    評論


    技術專區

    關閉
    主站蜘蛛池模板: 永靖县| 昌邑市| 科技| 汝城县| 博爱县| 抚松县| 长白| 长顺县| 神木县| 休宁县| 同江市| 凌海市| 凤冈县| 渝中区| 安庆市| 雷山县| 景洪市| 金华市| 微山县| 昌图县| 永春县| 雅江县| 墨竹工卡县| 麻江县| 靖州| 清水河县| 琼海市| 晋中市| 本溪市| 阿克陶县| 花莲县| 德令哈市| 平泉县| 长子县| 青州市| 霍山县| 彩票| 白城市| 会东县| 鹤庆县| 阜城县|