新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于單片機(jī)的飛機(jī)航向控制顯示教學(xué)模型設(shè)計與實現(xiàn)

基于單片機(jī)的飛機(jī)航向控制顯示教學(xué)模型設(shè)計與實現(xiàn)

作者: 時間:2012-12-25 來源:網(wǎng)絡(luò) 收藏

3.1 口線說明和變量定義
程序清單中第1行至第16行是說明和定義部分。在圖中和圖中輸入輸出口線已初步擬定好。但在程序中不直接采用P1.0,P1.1等這類的口線名稱,而是采用了符號地址,即用戶自定義的有助記意義的名稱。對于一些字節(jié)變量或布爾變量也采用了助記名。這樣做給程序設(shè)計帶來了方便,提高了程序的可讀性和可維護(hù)性,一旦要改變具體的引腳或變量單元(或位),只要在說明和定義部分略作修改,而不必把程序中所有有關(guān)的部分都一一修改。
在原理設(shè)計階段,諸如引腳功能的確定,通常是帶主觀性的。在印制電路板設(shè)計階段可能發(fā)現(xiàn)適當(dāng)變化一下引腳的功能,會給電路板設(shè)計帶來極大的方便。在不采用符號地址的程序設(shè)計中,這種少量的硬件變動可能會造成大量的軟件修改量。雷同的情況還可能在其他設(shè)計階段中發(fā)生。因此,盡可能采用符號地址。
3.2 背景程序(主程序)
程序清單中第18行和第26行至第34行是背景程序。這一段程序的框圖如圖4所示。

本文引用地址:http://m.butianyuan.cn/article/170637.htm

f.JPG


系統(tǒng)中利用定時器/計數(shù)器0和一個軟件計數(shù)器SUB_DIV來產(chǎn)生為時1 s的定時信號,以實現(xiàn)低頻(1Hz)閃爍功能。
對于TH0置初值16,即F0H,使定時器0每隔4 096 μs(采用12 MHz晶體,計數(shù)頻率為1 MHz)溢出中斷一次。每次中斷后,重置TH0,并使用軟件計數(shù)器SUB_DIV的值減1。SUB_DIV的初值為244,當(dāng)此值減為0時,歷經(jīng)的時間為:
244×4 096×10-6=0.999 424 s
3.3 中斷服務(wù)程序
定時器0溢出中斷服務(wù)程序是整個程序的實際主體部分其框圖如圖5所示。

g.JPG


現(xiàn)對中斷服務(wù)程序做幾點說明:
(1)測試過程可參見對圖3的說明。發(fā)現(xiàn)故障時。轉(zhuǎn)而執(zhí)行一跳指令CPL S_FALL,S_FALL是P2.3引腳的符號地址。若故障一直存在,則P2.3的狀態(tài)每隔1 s轉(zhuǎn)換一次。若在此引腳處接一個指示燈(硬件圖中未給出),則告警時指示燈以0.5 Hz的頻率閃爍。
(2)關(guān)于低頻振蕩信號(1 Hz)的產(chǎn)生
SUB_DIV的初值為244(11110100B),由244變到0,歷經(jīng)0.999 424 s,其中SUB_DIV.7為1的時間約占117/244 s,為0的時間約占127/244 s,故從SUB_DIV.7(LO_FREQ)獲得的就是占空比接近50%(47.95%)的低頻(1 Hz)信號。
(3)關(guān)于高頻振蕩信號(30 Hz)的產(chǎn)生
由第66行至第70行5條指令形成占空比為62.5%的30 Hz高頻信號。軟件計數(shù)器SUB_DIV的值,由244(11110100B)變?yōu)?時,SUB_DIV的低3位可以構(gòu)成8種狀態(tài),如表2的左半部所示。在0.999 424 s中這8種狀態(tài)的重復(fù)次數(shù)=11110B=30。故把低3位的狀態(tài)以某種方式組合起來,就可以形成一定占空比30 Hz的高頻信號。

h.JPG


表2的右半部分表示不同占空比的信號作用下,在每個周期的8個狀態(tài)時刻中信號燈通斷情況。在50%占空比下信號燈的光不夠亮,故本系統(tǒng)采用62.5%的占空比。上述幾條指令的執(zhí)行結(jié)果使PARK=1(模型待機(jī))的狀態(tài)下DIM=SUB_DIV.20R(SUB_DIV.1AND SUB_DIV.0),由表2可以看出,在8個狀態(tài)時刻中,前3個狀態(tài)信號燈斷開(DIM=0),后5個狀態(tài)信號燈接通(DIM=1),形成占空比為62.5%的30 Hz高頻信號。
調(diào)節(jié)閃爍信號的亮度可以靠對SUB_DIV的低3位進(jìn)行不同的邏輯操作來實現(xiàn),例如SUB_DIV.1 ORSUB_DIV.2的結(jié)果得占空比75%;SUB_D IV.0 ORSUB_DIV.1 OR SUB_DIV.2的結(jié)果得占空比為87.5%等。但要注意,在這8個狀態(tài)時刻中,信號燈只能通斷各一次,否則閃爍頻率就變了。
(4)關(guān)于各種信號的形成
由第102行至第113行是程序的基本部分,它們根據(jù)系統(tǒng)的輸入狀態(tài)(各開關(guān)的位置)來計算送給指示燈的信號。這一段程序用布爾處理機(jī)完全實現(xiàn)了圖1所示的邏輯功能。

4 結(jié)論
采用單片機(jī)實現(xiàn)控制顯示系統(tǒng)模型控制,具有系統(tǒng)響應(yīng)速度快,控制顯示功能直觀,課堂教學(xué)效果好的特點。經(jīng)過近2年教學(xué)使用和跟蹤調(diào)查,飛行學(xué)員在學(xué)科考試該部分內(nèi)容掌握非常好,后期飛行訓(xùn)練階段相關(guān)內(nèi)容與飛行實際結(jié)合效果反映較好。目前按照學(xué)科組劃分,對其他相關(guān)飛機(jī)系統(tǒng)模型進(jìn)行功能組合,以MCS-51單片機(jī)開發(fā)系統(tǒng)為基礎(chǔ),開展相關(guān)系統(tǒng)教學(xué)模型的設(shè)計,并與多媒體技術(shù)交聯(lián),實現(xiàn)學(xué)科專修室建設(shè)。


上一頁 1 2 3 下一頁

評論


技術(shù)專區(qū)

關(guān)閉