馬先明
(1. 深圳研祥智能科技股份有限公司,廣東 深圳 518057;2.國家特種計算機工程技術(shù)研究中心,廣東 深圳,518057)
一種機載航空服務(wù)器的離散控制輸入輸出信號的設(shè)計方法
馬先明1,2
(1. 深圳研祥智能科技股份有限公司,廣東 深圳 518057;2.國家特種計算機工程技術(shù)研究中心,廣東 深圳,518057)
本文針對航空服務(wù)器對離散輸入輸出信號需要嚴(yán)格的時序控制的特點,提出一種離散輸入輸出信號的設(shè)計方法。該方法通過對I2C總線、控制芯片、IO芯片、觸發(fā)器、電壓隔離等器件的控制來實現(xiàn)離散輸入輸出信號的設(shè)計,滿足航空服務(wù)器場合的應(yīng)用。
離散輸入輸出信號;控制芯片;IO芯片
機載航空服務(wù)器一般向乘客提供咨詢、娛樂、新聞等服務(wù),該服務(wù)器的離散控制輸入輸出信號負(fù)責(zé)處理航空電子設(shè)備的控制信號,其離散控制輸入信號負(fù)責(zé)采集航空電子設(shè)備的狀態(tài)信息或接收航空電子設(shè)備的控制信息,比如溫度、濕度、氣壓等信息;離散控制輸出信號負(fù)責(zé)向航空電子設(shè)備發(fā)送控制信息或返回航空服務(wù)器的狀態(tài)信息。
航空電子設(shè)備的工作電平往往與普通工業(yè)設(shè)備的工作電平不同,不能將普通工業(yè)設(shè)備的離散控制輸入輸出信號直接與航空電子設(shè)備的信號連接,否則會嚴(yán)重?fù)p壞航空電子設(shè)備。
普通工業(yè)設(shè)備的離散控制輸入輸出信號只是簡單的信號輸入和信號輸出,根本不涉及離散控制輸入輸出信號的時序控制和使能,無法滿足航空服務(wù)器的現(xiàn)場應(yīng)用需求。但是機載航空服務(wù)器因其使用環(huán)境的特殊性,離散控制輸入輸出信號的產(chǎn)生需要嚴(yán)格的時序控制信號和使能信號的配合,防止IO芯片的電平擾動得不到有效控制從而對航空電子設(shè)備產(chǎn)生誤觸發(fā)和誤操作。
因此有必要提出一種滿足機載航空服務(wù)器環(huán)境應(yīng)用的離散控制輸入輸出信號設(shè)計方法。
本設(shè)計采用Intel Sandy Bridge[1]處理器搭配南橋HM65來實現(xiàn)。圖1所示為本設(shè)計的系統(tǒng)方框圖。
圖1 系統(tǒng)方框圖Fig. 1 System block diagram
從系統(tǒng)方框圖中可以看出,本設(shè)計主要通過南橋的I2C(串行總線)接口來做通訊端口,所選的外圍設(shè)備也都是采用I2C總線通訊的元器件。I2C總線用于CPU與外設(shè)直接進(jìn)行通信,只有兩條線:數(shù)據(jù)線SDA和控制線SCL,該總線用于CPU與外設(shè)直接進(jìn)行通信,具有簡單性,有效性,其優(yōu)點是可以連接多個設(shè)備,但同一時刻只有一個設(shè)備成為主設(shè)備與CPU通信。
南橋HM65通過自帶的I2C[2]模塊經(jīng)I2C總線協(xié)議分別與控制芯片A、IO芯片A、控制芯片B和IO芯片B連接,其中控制芯片A和控制芯片B采用FPGA或單片機(MCU)來實現(xiàn),用來產(chǎn)生控制信號,IO芯片A和IO芯片B采用PCA9555芯片來實現(xiàn),用來傳送輸入輸出端口上的數(shù)據(jù)。
南橋HM65通過I2C總線控制和配置連接到該總線上的I2C設(shè)備,南橋HM65的I2C控制器中需要配置的寄存器包含狀態(tài)寄存器STS、控制寄存器CNT、命令寄存器CMD、地址寄存器SLVA和數(shù)據(jù)寄存器D0。
IO控制芯片A和IO控制芯片B PCA9555[3]接收來自南橋HM65的I2C控制器的控制命令,該芯片共有兩個端口port 0和port 1,每個端口包含8路輸入輸出。命令字0和1表示訪問port 0和port 1的輸入寄存器;命令字2和3表示訪問port 0和port 1的輸出寄存器;命令字4和5表示訪問port 0和port 1的極性寄存器;命令字6和7表示訪問port 0和port 1的配置寄存器,將配置寄存器設(shè)置成1表示將對應(yīng)管腳設(shè)置成輸入模式,將配置寄存器設(shè)置成0表示將對應(yīng)管腳設(shè)置成輸出模式。命令字功能如表1所示。
表1 命令字功能Tab.1 Command functions
南橋HM65通過I2C總線向IO控制芯片A和IO控制芯片B PCA9555發(fā)送相應(yīng)的命令字來實現(xiàn)對相應(yīng)端口的控制[4],從而實現(xiàn)離散控制信號的輸入和輸出。對IO控制芯片B PCA9555的操作需要遵循先設(shè)置配置寄存器,再設(shè)置極性寄存器,最后設(shè)置輸入或輸出寄存器的原則,否則將產(chǎn)生設(shè)置失敗的錯誤。
航空電子設(shè)備的輸出信號作為機載航空服務(wù)器的離散控制輸入信號,通過這些離散控制輸入信號,機載航空服務(wù)器可以獲得航空電子設(shè)備的狀態(tài)信息或接收來自航空電子設(shè)備的控制信息。
航空電子設(shè)備的輸出信號也即離散控制輸入信號一般是高電壓工作范圍,高電壓的離散控制輸入信號經(jīng)過光耦器件后將光耦器件的輸出信號作為透明D型觸發(fā)器的輸入信號。光耦器件不僅起到了隔離的作用,同時還將高電壓工作范圍過渡到低電壓工作范圍,對機載航空服務(wù)器和航空電子設(shè)均有保護(hù)作用,防止電子設(shè)備的擊穿損壞。
本設(shè)計中IO芯片A PCA9555設(shè)置成輸入模式,其接收來自透明D型觸發(fā)器的輸出端Q0、Q1、...、Q15的輸出信號,而透明D型觸發(fā)器將其輸入端信號D0、D1、...、D15正確鎖存并傳輸?shù)捷敵龆薗0、Q1、...、Q15的過程需要在其/OE和/LE信號有效時才觸發(fā),而控制芯片A(FPGA/MCU)[5,6]就是滿足對透明D型觸發(fā)器/OE和/LE信號的時序控制。
通過HM65 I2C控制器將IO芯片A PCA9555設(shè)置成輸入模式,同時控制芯片A模擬成一個I2C設(shè)備,同樣接收來自南橋HM65 I2C控制器的命令和控制。因為透明D型觸發(fā)器的/OE信號和/LE信號是低電平有效,所以當(dāng)控制芯片A輸出一個有效的低電平信號時,透明D型觸發(fā)器的輸出端Q0、Q1、...、Q15的信號將被IO芯片A PCA9555鎖定采集并輸出,南橋HM65的I2C控制器通過訪問IO芯片A PCA9555的輸入端口port 0和port 1就可以獲得當(dāng)前航空電子設(shè)備的離散輸入信號。離散輸入信號處理流程圖如圖2所示。
能否正常獲取離散輸入信號是由IO芯片A和控制芯片A共同決定的,防止輸入信號的異常抖動對前端電路產(chǎn)生影響。
圖2 離散輸入信號處理流程圖Fig. 2 Diagram of the software process about discrete input signal
3 離散輸出信號控制
機載航空服務(wù)器需要向航空電子設(shè)備發(fā)送離散輸出信號時,通過南橋HM65的I2C控制器將IO芯片B PCA9555設(shè)置成輸出模式,同時控制芯片B模擬成一個I2C設(shè)備,同樣接收來自南橋HM65 I2C控制器的命令和控制。
邊沿觸發(fā)D型觸發(fā)器的/OE信號為低電平有效,而CLK信號為邊沿觸發(fā)上升沿有效。通過南橋HM65的I2C控制器將控制芯片B輸出連接邊沿觸發(fā)D型觸發(fā)器的/OE信號一直處于低電平,即邊沿觸發(fā)D型觸發(fā)器的/OE信號一直處于有效狀態(tài)。接著,通過南橋HM65的I2C控制器將IO芯片B PCA9555的輸出端管腳設(shè)置成所需的高低電平控制信號,同時控制芯片B輸出一個邊沿上升沿信號給到邊沿觸發(fā)D型觸發(fā)器的/ CLK,使邊沿觸發(fā)D型觸發(fā)器的輸入端D0、D1、...、D15信號輸出到輸出端Q0、Q1、...、Q15,然后經(jīng)過達(dá)林頓管提高驅(qū)動能力后輸出給航空電子設(shè)備。離散輸出信號處理流程圖如圖3所示。
離散輸出信號能否正常輸出是由IO芯片B和控制芯片B共同決定的,對離散輸出信號的有效控制避免輸出不可控的信號。
圖3 離散輸出信號處理流程圖Fig. 3 Diagram of the software process about discrete output signal
本設(shè)計提出的離散控制輸入輸出信號設(shè)計方法對所接收的輸入信號和對外的輸出信號都進(jìn)行了嚴(yán)格時序控制,摒棄了以往簡單的只是對輸入端口和輸出端口高低電平的控制,能有效防止誤操作,滿足航空服務(wù)器對離散控制輸入輸出信號的需求。
[1] 因特爾. 因特爾6系和C200系芯片組. 數(shù)據(jù)手冊,2011.
Intel. Intel 6 Series Chipset and Intel C200 Series Chipset. Product data sheet,2011.
[2]] Frank van Gilluwe. PC技術(shù)內(nèi)幕[M]. 北京:北京電力出版社,2001:212-222. Frank van Gilluwe. PC Technology[M]. Beijing:Beijing Electric Power Press,2001:212-222.
[3]] 飛利浦半導(dǎo)體. 16位I2C接口芯片PCA9555和帶中斷功能的SMBus輸入輸出端口. 產(chǎn)品數(shù)據(jù)手冊. 2004.
Philips Semiconductors. PCA9555 16-bit I2C and SMBus I/O port with interrupt. Product data sheet,2004.
[4]] 孫瓊. 嵌入式Linux應(yīng)用程序開發(fā)詳解[M]. 北京:人民郵電出版社,2007:166-207.
SUN Qiong. Embedded Linux Application Development [M]. Beijing:People’s Posts and Telecommunications Press,2007:166-207.
[5]] 馬潮. AVR單片機嵌入式系統(tǒng)原理與應(yīng)用實踐. 北京:北京航空航天大學(xué)出版社,2007:153-169.
MA Chao. AVR Microcomputer Principle and Applications. Beijing:Beijing University of Aeronautics and Astronautics Press,2007:153-169.
[6]] 夏宇聞. Verilog數(shù)字系統(tǒng)設(shè)計教程. 北京:北京航空航天大學(xué)出版社,2003:177-201.
XIA Yu-wen. Verilog Digital System Design. Beijing:Beijing University of Aeronautics and Astronautics Press,2003:177-201.
Design of Discrete Input and Output Control Signal about the Aviation Server
MA Xian-ming1,2
(1. EVOC Intelligent Technology Co., Ltd, Guangdong Shenzhen 518057, China; 2.National Special Computer Engineering Technology Research Center, Shenzhen, Guangdong 518057, China)
This paper presents a method for designing discrete input and output control signal about the aviation server because of strict control characteristics. According to control the I2C bus, control ICs, IO chips, fl ip-fl op and voltage isolation devices to achieve this design. This approach is consistent with the aviation server area.
Discrete input and output control signal; Control IC; IO chip
馬先明.一種機載航空服務(wù)器的離散控制輸入輸出信號的設(shè)計方法[J]. 新型工業(yè)化,2016,6(10):90-93.
10.19335/j.cnki.2095-6649.2016.10.014
: MA Xian-ming. Design of Discrete Input and Output Control Signal about the Aviation Server[J]. The Journal of New Industrialization, 2016, 6(10): 90-93.
馬先明(1981-),男,碩士研究生,工程師,研究方向:自動化控制