陜西寶成航空儀表有限責任公司 李坤武 馬大兵
接口信號種類很多,如ARINC407、ARINC429、RS422,SPI等,雖然數據通信板接口功能很全,但重量大、功耗大、價格昂貴,而且依賴操作系統,采用高集成度的可編程邏輯器件實現與總線之間的數據通信,可有效節省硬件資源,并且具有體積小、成本低、性能穩定的優點。
接口電路主要處理信號為:
a)接收、處理兩路ARINC429接口信號;發送一路ARINC429接口信號。
b)通過一路全雙口串行接口,對外部接收、發送信息。
c)通過串口控制內部液晶屏工作。
d)接收1路符合ARINC407標準信號。
e)處理按鍵信息。
f)通過雙口RAM傳送數據。
接口原理框圖見圖1,接口主處理器為C8051F020,采用HI-8282和HI-3182芯片通過兩路ARINC429接口分別接收設備信息,通過一路ARINC429接口向設備發送信息,處理器通過數據線和讀寫控制線,由CPLD產生讀寫控制邏輯,分次讀取ARINC429數據;通過單片機的UART0口、RS422接口芯片實現RS422格式通信信號接收和發送;通過單片機的UART1口實現RS232格式信號接收和發送、控制液晶屏工作;通過SDC轉換模塊,接收1路符合ARINC407標準的無線電信號轉換為數字信號;通過I/O讀取按鍵信號;單片機將各參數信息,按照要求數據格式進行調整解算,并通過單片機傳遞給雙口RAM。
圖1 接口原理框圖
接口輸入輸出處理考慮功能、處理能力、功耗的需求,選用Silicon公司生產工作主頻為25 MHz的C8051F020型單片機作為核心處理器。C8051F020處理器是面向嵌入式控制領域的高檔混合信號微控制器。C8051F020處理器采用高速8051微控制器內核,指令結構為流水線方式,70%指令的執行時間只需一個或兩個系統時鐘周期,執行指令速度可達25MIPS。
C8051F020處理器具有4K+256字節的RAM,可以運行較大的嵌入式控制軟件。其內置的64K flash存儲器可以方便地將應用程序內置其中,省去了外擴程序存儲器,簡化了電路的設計,也節省了CPU的資源。
C8051F020處理器具有8組8位字節寬的I/O端口,所有端口均耐5V電壓,可以通過軟件對交叉開關配置寄存器XBR0、XBR1、XBR2進行設置,按需要將其中的端口設置為數據總線、地址總線、控制總線和I/O口,端口靈活的可選擇方式大大方便了系統的構成和軟件編程。
數據采集處理的設計中,C8051F020處理器的端口配置如下:
1)P0.0、P0.1設置為串行總線,轉換為RS422進行通訊;
2)P0.2、P0.3設置為串行總線,用于RS232格式信號通訊;
3)P0.4、P0.5設置為中斷0(INT0)和中斷1(INT1),用于兩路ARINC429數據的中斷輸入信號;
4)P1.0~P1.5設置為輸入端口,用于采集6路按鍵信息;
5)P3.5~P3.7設置為輸出端口,用于控制ARINC429數據采集;
6)P4.1、P4.2設置為輸出端口,用于控制SDC轉換模塊工作及同步器信號采集;
7)P4.6、P4.7設置為讀/寫端口,用于控制CPLD的數據交換;
8)P5、P6口設置為16為地址總線接口;
9)P7口設置為8位數據總線接口。
通過以上配置,滿足對系統控制及數據處理的要求。
根據接口選用的元器件,需要進行邏輯控制的器件包括HI-8282、14ZSZ3412、雙口RAM數據存儲空間的尋址控制,采用ALTER公司的MAX 7000A系列EMP7128AETI100可編程邏輯器,CPLD內部通過硬件描述語言進行讀寫控制,產生接收、發送ARINC429、ARINC407、雙口RAM數據的控制邏輯,選用HI-8282芯片接收兩路ARINC429參數、通過HI-3182芯片發送ARINC429參數,主要控制信號CWSTR用于設置HI-8282狀態寄存器工作控制字,SEL信號用于片選選通,EN1、EN2為接收器的接收控制信號,ENTX、TX/R用于發送控制;通過1塊SDC模塊接收無線電信息,經過模數轉換、由處理器讀取數據并處理,無線電同步器信號數據采集處理采用716所14ZSZ3412型14位自整角機/數字轉換器,14ZSZ3412型自整角機/數字轉換器轉換誤差為±5.3′,14ZSZ3412主要控制信號為使能信號“EN”,字節選擇信號“BYSEL”,BYSEL信號:高字節使能端,當BYSEL信號為邏輯高電平時,轉換器高字節輸出數據,當BYSEL信號為邏輯低電平時,低字節傳送到輸出端。當BUSY為低電平時,表示轉換器內部已轉換結束,此時數據輸出穩定有效,可以讀取。
應用Altera Quartus軟件設計平臺,根據邏輯關系,通過CPLD地址總線與讀寫信號產生所有控制信號時序,該芯片擁有可用I/O引腳84個,滿足HI8282、HI3182、14ZSZ3412信號、雙口RAM的綜合邏輯控制,接口處理將參數轉換為數字信號,再把信息按照內部數據格式進行調整解算,解算后的各種信息直接傳送給雙口RAM。
接口處理的按鍵信息采用循環掃描法,并按照識別出來按鍵信息,通過RS232接口進行液晶屏的控制和工作狀況監測,進行顯示屏亮度調節以及狀態切換。
圖2 軟件執行過程
接口軟件主要完成對ARINC 407、ARINC429、串口數據、按鍵的識別處理四大功能。設計時采用模塊化的設計方法,便于程序管理和維護升級,模塊主要分六個模塊:初始化模塊、自檢測模塊、定時按鍵識別模塊、數據采集處理模塊、按鍵處理模塊、液晶屏控制模塊。
初始化模塊:主要用來設置產品運行所需的硬件及軟件環境,完成CPU端口配置、看門狗、系統時鐘、定時器、串口等的初始化。
自檢測模塊:主要用來實現產品的開機自檢和周期自檢。
定時按鍵識別模塊:通過定時器的使用實現對按鍵的周期掃描處理,識別按鍵位置。
數據采集處理:循環對ARINC 407、ARINC429、串口數據進行采集處理,轉換為內部的數據格式發送給雙口RAM。
按鍵處理模塊:處理識別的按鍵,根據按鍵來決定控制功能。
液晶屏控制模塊:通過與處理器進行串行通信,實現液晶的加熱、亮度調整控制等。
本系統針對機載設備接口板尺寸小的特點,介紹了基于單片機和CPLD的接口設計,可以方便快捷地接收、讀取多種數據信息,使用CPLD不僅大大節省了硬件資源和PCB的空間,而且也大幅度節約了整體成本,同時系統的升級和擴展也變得非常容易,并解決了板卡的小尺寸給設計帶來的困難。由于使用VHDL 語言進行設計,對不同接口可以更改其片內邏輯,具有良好的移植性。本文所述接口電路在工程實際中已經得到應用,證明本設計合理、通信可靠,具有一定的實用意義。
[1]潘琢金,施國君.C8051FXXX高速SOC單片機原理及應用[M].北京:北京航空航天大學出版社,2002.
[2]MAX 7000A Programmable Logic Device.
[3]HI8282 AR INC429 Serial Transmitter and Dual Receiver.