版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 目 錄</b></p><p> 第一章 設(shè)計課題概述1</p><p> 1.1 課程設(shè)計目的1</p><p> 1.2 設(shè)計內(nèi)容及要求1</p><p> 1.2.1 設(shè)計內(nèi)容1</p><p> 1.2.2 設(shè)計要求
2、2</p><p> 第二章 總體設(shè)計3</p><p> 2.1 設(shè)計思想3</p><p> 2.2 總體設(shè)計3</p><p> 第三章 硬件設(shè)計4</p><p> 3.1 系統(tǒng)方案4</p><p> 3.2 硬件設(shè)計要求5</
3、p><p> 3.3 系統(tǒng)所選用各芯片的介紹6</p><p> 3.4 系統(tǒng)所選用各芯片的連接10</p><p> 3.5 硬件原理圖及其說明11</p><p> 第四章 軟件設(shè)計12</p><p> 4.1 流程圖12</p><p> 4.2
4、 源程序清單和注釋15</p><p> 第五章 調(diào)試過程20</p><p><b> 總 結(jié)23</b></p><p><b> 參考文獻24</b></p><p> 第一章 設(shè)計課題概述</p><p> 1.1 課程設(shè)計目的&
5、lt;/p><p> 首先,通過課程設(shè)計使同學(xué)們在以下專業(yè)知識方面達到課程學(xué)習(xí)的要求:</p><p> (1)掌握微機系統(tǒng)的開發(fā)步驟;</p><p> (2)掌握8259A、8255A、8253各芯片的用法;</p><p> (3)掌握匯編程序的設(shè)計。</p><p> 其次,培養(yǎng)同學(xué)們的系統(tǒng)設(shè)計能力,使同
6、學(xué)們達到以下能力訓(xùn)練:</p><p> (1)調(diào)查研究、分析問題的能力;</p><p> ?。?)使用設(shè)計手冊、技術(shù)規(guī)范的能力;</p><p> ?。?)查閱中外文獻的能力;</p><p> ?。?)制定設(shè)計方案的能力;</p><p> ?。?)計算機應(yīng)用的能力;</p><p>
7、?。?)設(shè)計計算和繪圖的能力;</p><p> ?。?)語言文字表達的能力。</p><p> 1.2 設(shè)計內(nèi)容及要求</p><p> 1.2.1 設(shè)計內(nèi)容</p><p> 設(shè)計一個智能搶答器。</p><p><b> 基本要求:</b></p><p&
8、gt; ?。?)可供四組同時搶答,由按鈕控制。</p><p> ?。?)主持人按啟動鍵,綠燈亮開始搶答。</p><p> ?。?)能顯示出最先搶答的組號,而對其他組的搶答不予理睬,黃燈亮并</p><p> 揚聲器提示搶答成功。</p><p> ?。?)對主持人未曾按啟動扭之前就按搶答按鈕的犯規(guī)組,顯示其組號,亮紅燈并揚聲器提示警告。
9、</p><p> (5)對搶答后的回答時間25秒進行倒計時控制,如回答超時,則</p><p><b> 以揚聲器報警。</b></p><p> (6)編寫課程設(shè)計說明書。</p><p> 1.2.2 設(shè)計要求</p><p> 設(shè)計一個具有四路搶答的搶答器,啟動計算機,計算機
10、自動為系統(tǒng)各芯片進行初始化,搶答器開始工作。</p><p> 比賽開始,在主持人按下開始鍵,綠燈亮后,選手才可開始搶答,否則違規(guī)。利用并行接口和開關(guān)鍵。邏輯開關(guān)K0——K3代表搶答按鈕,當(dāng)某個邏輯開關(guān)閉合時,相當(dāng)于搶答按鈕按下。若選手搶答成功,黃燈亮,七段數(shù)碼管顯示選手號碼,揚聲器鳴叫。若選手搶答違規(guī)(主持人未按開始鍵),七段數(shù)碼管顯示違規(guī)選手號碼,紅燈亮,揚聲器報警。</p><p>
11、; 若系統(tǒng)提示某號選手搶答違規(guī),主持人仍未按開始鍵,此時該號選手又按下?lián)尨疰I,七段數(shù)碼管顯示該選手的號碼。本系統(tǒng)開機后,若主持人既未按復(fù)位鍵又未按開始鍵,此時有選手按下?lián)尨疰I,系統(tǒng)提示紅燈亮,并報警。</p><p><b> 注:</b></p><p> (1)搶答成功,揚聲器的鳴叫聲音頻率為1KHz(1.5KHz)。</p><p>
12、; ?。?)搶答失敗,揚聲器的鳴叫聲音頻率為0.5KHz(1KHz)。</p><p> (3)搶答計時時間到,揚聲器的鳴叫聲音頻率為0.75KHz(1.25KHz)。</p><p> ?。?)揚聲器鳴叫或報警的時間為12s(10s)。</p><p> 第二章 總體設(shè)計</p><p> 2.1 設(shè)計思想</p>
13、;<p> 設(shè)計一個具有4路搶答的搶答器,利用并行接口和開關(guān)鍵。邏輯開關(guān)K0---K3代表搶答按鈕,當(dāng)某個邏輯開關(guān)閉合時,相當(dāng)于搶答按鈕按下,此時在七段數(shù)碼管上將其號碼顯示出來,并使喇叭響一聲(或者以發(fā)光二極管代替)。</p><p> 2.2 總體設(shè)計</p><p> 由于本次實驗要用到數(shù)碼顯示、中斷控制、倒計時等功能,故初步分析,需要8255、8259、825
14、3等芯片。</p><p> 經(jīng)過分析,實驗的關(guān)鍵是準確判斷出最先搶答者的信號并鎖存,而同時不理睬其他搶答者的信號。為此,可將4個搶答按鈕信號通過一個4位并行輸入口接至微機中。當(dāng)主持人啟動搶答過程后,微機通過該并行輸入口循環(huán)對4路搶答信號進行采樣。當(dāng)采樣到那一組的搶答信號已經(jīng)發(fā)出,則立即停止采樣,并記錄下該組的組號,每路搶答按鈕電路可以參考圖2-2-1進行設(shè)計。</p><p> 圖2
15、-2-1搶答按鈕電路</p><p> 由圖可知,當(dāng)4組均未按下?lián)尨鸢粹o時,送入到并行接口的4位搶答狀態(tài)都是0,而當(dāng)微機采樣到這4位數(shù)據(jù)不為0時,則表示有一組獲得了搶答機會,然后通過逐位查詢個位狀態(tài),即可判斷出哪一組搶答成功,最后利用并行輸出接口將搶答成功的組號現(xiàn)實出來.在實驗中,可以僅用一位七段數(shù)碼管來顯示搶答選手的組號.</p><p> 第三章 硬件設(shè)計</p>
16、;<p> 3.1 系統(tǒng)方案</p><p> 該搶答器所要器件:中斷優(yōu)先級管理器8259A、可編程并行接口芯片8255、</p><p> 兩片可編程定時器/計數(shù)器8253,三個一樣的驅(qū)動器,黃、紅、綠三個發(fā)光二極管,電阻,一個4輸入與非門,一個非門,一個揚聲器,一個LED顯示器,6個按鍵。
17、 </p><p><b> (1)內(nèi)存單元編址</b></p><p> ① 中斷優(yōu)先級管理器8259A的端口地址為20H、21H;</p><p> ?、?可編程并行接口接口芯片8255A的端口地址為80H、81H、82H、83H;</p><p> ?、?第一片編程定時器
18、/計數(shù)器8253的端口地址為40H、41H、42、43H;</p><p> ?、?第二片編程定時器/計數(shù)器8253的端口地址為50H、51H、52、53H.</p><p> (2)鍵盤、揚聲器及顯示功能的定義</p><p> 6個按鍵中,一個開始鍵一個復(fù)位鍵,另外4個用做4位選手的搶答按鍵。揚聲器用與黃、紅、綠三個發(fā)光二極管配合使用,黃燈亮揚聲器鳴叫表示搶
19、答成功,紅燈亮揚聲報警表示搶答違規(guī)報警,綠燈亮揚聲器不鳴則表示主持人已按下開始鍵。LED顯示器顯示的內(nèi)容與選手號對應(yīng),搶答成功或違規(guī)都要顯示。</p><p> (3)存儲單元的分配、標志位的含義</p><p> ?、?定義一個TAB變量用來存儲1~9的字形碼信息,如下表</p><p> ?、?定義一個BZ變量作為標志位,用來判斷選手搶答是否違規(guī),BZ=0F
20、FH時表示主持人已經(jīng)按下開始鍵選手可以搶答,BZ=00H表示主持人未按下開始按鍵,選手不可以搶答。</p><p> 3.2 硬件設(shè)計要求</p><p> (1)中斷優(yōu)先級管理器8259A控制字要求</p><p> ?、?芯片控制字:采用邊沿觸發(fā),單片8259,要寫入ICW4控制字;</p><p> ?、?中斷類型碼控制字:設(shè)置
21、IR0~IR7的中斷類型碼依次為08H、09H、…、0FH;</p><p> ?、?方式控制字:優(yōu)先級設(shè)置方式為全嵌套方式即固定優(yōu)先級方式,主片工作在緩沖方式下,中斷結(jié)束方式采用中斷非自動結(jié)束方式,8259工作在80X86系統(tǒng)上。</p><p> (2)可編程并行接口芯片8255A控制字要求</p><p> A口工作在方式0,做為輸入端口用于連接選手按鍵(
22、PA3~PA0依次對應(yīng)按鍵1~4);B口工作在方式0,做為輸出端口,經(jīng)驅(qū)動器1連接LED顯示器(PB7~PB0依次對應(yīng)連接LED顯示器的dp、g、f、e、d、c、b、a七段數(shù)碼管管腳);C口也必須工作在方式0,高4 位做輸入端口(本次設(shè)計中只用PC4、PC5,分別用于連接復(fù)位鍵和開始鍵),低4位做輸出端口(PC3~PC0,經(jīng)驅(qū)動器2后PC1、PC2、PC3分別用于連接黃、紅、綠三個發(fā)光二極管,PC0連接到8253的GATE1端,以控制通
23、道1的計數(shù)。</p><p> (3)可編程定時器/計數(shù)器8253控制字要求</p><p><b> 采用兩片8253。</b></p><p><b> ?、?第一片:</b></p><p> 通道0:操作類型為先讀寫低字節(jié)再讀寫高字節(jié),工作在方式3即方波發(fā)生器,計數(shù)格式為BCD碼,計數(shù)
24、初值為4000。</p><p> 通道1:操作類型為先讀寫低字節(jié)再讀寫高字節(jié),工作在方式1即可重觸發(fā)的單穩(wěn)態(tài)觸發(fā)器,計數(shù)格式為BCD碼,計數(shù)初值為3000。</p><p> 通道2:操作類型為先讀寫低字節(jié)再讀寫高字節(jié),工作在方式3即方波發(fā)生器,計數(shù)格式為BCD碼,計數(shù)初值為0。</p><p><b> ?、?第二片:</b></
25、p><p> 通道0:操作類型為先讀寫低字節(jié)再讀寫高字節(jié),工作在方式3即方波發(fā)生器,計數(shù)格式為BCD碼,計數(shù)初值為4000。</p><p> 通道1:操作類型為先讀寫低字節(jié)再讀寫高字節(jié),工作在方式1即可重觸發(fā)的單穩(wěn)態(tài)觸發(fā)器,計數(shù)格式為BCD碼,計數(shù)初值為6250。</p><p> 通道2:操作類型為先讀寫低字節(jié)再讀寫高字節(jié),工作在方式3即方波發(fā)生器,計數(shù)格式為
26、BCD碼,計數(shù)初值為0。</p><p> 3.3 系統(tǒng)所選用各芯片的介紹</p><p> 1.中斷優(yōu)先級管理器8259A</p><p><b> (1) 內(nèi)部結(jié)構(gòu)</b></p><p> 8259A采用NMOS工藝制成,有28根引腳,所有輸入、輸出端與TTL電平兼容,單一電源(Vcc=+5V)供電。8
27、259的內(nèi)部主要組成部分,包括處理部件(中斷請求寄存器IRR、優(yōu)先級鑒別器PR及現(xiàn)行服務(wù)寄存器ISR)、控制部件(控制邏輯及中斷屏蔽寄存器IMR)、數(shù)據(jù)總路線緩沖器、讀/寫邏輯以及級聯(lián)緩沖器/比較器等5個部分。</p><p> (2) 主要的外部引腳</p><p> ① D0~D7:雙向數(shù)據(jù)線,CPU與8259間利用這個數(shù)據(jù)總路線傳送數(shù)據(jù)及命令。</p><p&
28、gt; ?、?:寫控制輸入信號,同控制總路線上的 信號相連。</p><p> ?、?:讀控制輸入信號,同控制總路線上的信號相連。</p><p> ?、?A0:地址選擇信號,用來對8259A內(nèi)部的兩個可編程寄存器進行選擇。</p><p> ?、?:片選輸入信號,低電平有效。有郊時可通過數(shù)據(jù)總路線設(shè)置命令并對內(nèi)部寄存器進行讀出。當(dāng)進入中斷響應(yīng)時序時,該引腳狀態(tài)與進
29、行的處理無關(guān)。</p><p> ⑥ INT:由8259A向CPU發(fā)出的中斷請求信號。</p><p> ?、?:輸入信號,接收CPU送來的中斷響應(yīng)信號INTA。</p><p> ?、?IR0~IR7:8個中斷請求輸入信號,高電平或上升沿有效。用于接收外設(shè)接口來的中斷請求。</p><p><b> (3) 工作方式</
30、b></p><p> ①優(yōu)先級設(shè)置方式:全嵌套方式(固定優(yōu)先級方式)、特殊全嵌套方式(可響應(yīng)同級中斷方式)、輪轉(zhuǎn)優(yōu)先級方式、特殊輪轉(zhuǎn)優(yōu)先級方式。</p><p> ?、谥袛嘣雌帘畏绞剑浩胀ㄆ帘畏绞健⑻厥馄帘畏绞?。</p><p> ③中斷結(jié)束方式:中斷自動結(jié)束方式、中斷非自動結(jié)束方式(包括一般中斷結(jié)束方式、特殊中斷結(jié)束方式)。</p>&l
31、t;p> ④系統(tǒng)總路線連接方式:緩沖方式、非緩沖方式。</p><p> ?、葜袛嗾埱笮盘栍|發(fā)方式:邊沿觸發(fā)方式、電平觸發(fā)方式。</p><p> (4) 初始化控制字格式</p><p> (5) 操作命令字格式</p><p> 2.可編程并行接口接口芯片8255A</p><p><b>
32、 (1)內(nèi)部結(jié)構(gòu)</b></p><p> 8255A芯片是一個采用NMOS工藝制造的40引腳雙列直插式(DIP)封裝組件。8255A有3個8位數(shù)據(jù)端口,即A口、B口及C口,它們都可以分別作為輸入口或輸出口使用;A組控制與B組控制;讀/寫控制邏輯;數(shù)據(jù)總路線緩沖器。</p><p> (2)主要的外部引腳</p><p> ?、?PA7~PA0:A
33、口的8條I/O線。8條線只能同時作為輸入或輸出,不能分開使用,可設(shè)置成雙向口,也只有A口允許這樣做。</p><p> ② PB7~PB0:B口的8條I/O線。不可以設(shè)置成雙向口,其它和A口一樣。</p><p> ③ PC7~PC0:C口的8條I/O線。不可以設(shè)置成雙向口,但它可以分拆為兩組即高4位和低4位,這兩組可以任意設(shè)置為輸入或輸出。除了作為獨立的I/O線外,C口還經(jīng)常為A口、
34、B口服務(wù),配合A口、B口作聯(lián)絡(luò)線使用。</p><p> ?、?A1、A0:端口地址選擇信號。用于選擇8255A的3個數(shù)據(jù)端口和一個控制口。當(dāng)A1A0=00時,選擇端口A;為01時,選擇端口B;為10,選擇端口C;為11時,選擇控制口。</p><p><b> (3)工作方式</b></p><p> ?、俜绞?:基本的輸入/輸出方式。A口
35、、B口、C口都可以工作在些方式下。</p><p> ②方式1:選通輸入/輸出方式(應(yīng)答方式)。A口、B口工作在此方式下。</p><p> ?、鄯绞?:雙向傳輸方式。只有A口可以工作在此方式下。</p><p> (4)方式控制字格式</p><p> 3.可編程定時器/計數(shù)器8253</p><p><
36、b> ?。?)內(nèi)部結(jié)構(gòu)</b></p><p> 8253采用NMOS工藝制成,有24個引腳,所有輸入、輸出端均TTL電平兼容,單一電源(Vcc=+5V)供電,最高計數(shù)速率為2.6MHz。它包括3個計數(shù)器(即計數(shù)器0、1、2)、數(shù)據(jù)總路線緩沖器、讀/寫邏輯以及控制寄存器等4個部分。</p><p><b> ?。?)外部引腳</b></p&g
37、t;<p> ?、?A1、A0:地址輸入線,用來址8253內(nèi)部的4個端口,即3個計數(shù)器和1個控制字寄存器與CPU系統(tǒng)地址線相連。</p><p> ?、?CLK0、CLK1、CLK2:時鐘脈沖輸入端,用于輸入定時脈沖或計數(shù)脈沖信號。CLK可以是系統(tǒng)的時鐘脈沖,也可以由系統(tǒng)時鐘分頻或者其他脈沖源提供。當(dāng)用于定時時,這個脈沖必須是均勻的、連續(xù)的、周期精確的,而用于計數(shù)時,這個脈沖可以是不均勻的、斷續(xù)的、
38、周期不定的。</p><p> ③ GATE0、GATE1、GATE3:門控輸入端,用于外部控制計數(shù)器的啟動計數(shù)和停止計數(shù)的操作。兩個或兩個以上計數(shù)器連用時,可用此信號同步,也可用于與外部某信號的同步。</p><p> ?、?OUT0、OUT1、OUT2:計數(shù)輸出,當(dāng)計數(shù)器從初值開始完成計數(shù)操作進,OUT引腳輸出相應(yīng)的信號。</p><p><b>
39、?。?)工作方式</b></p><p> ①方式0:減1計數(shù)到0,產(chǎn)生中斷請求信號。</p><p> ?、诜绞?:減1計數(shù)到0,產(chǎn)生可重復(fù)觸發(fā)的單穩(wěn)態(tài)負脈沖信號。</p><p> ?、鄯绞?:減1計數(shù)到1,分頻器(速率信號發(fā)生器)。</p><p> ④方式3:減1計數(shù)到初值的1/2,方波發(fā)生器。</p>
40、<p> ⑤方式4:減1計數(shù)到0,軟件觸發(fā)產(chǎn)生選通負脈沖信號。</p><p> ?、薹绞?:減1計數(shù)到0,硬件觸發(fā)產(chǎn)生選通負脈沖信號。</p><p> (4)方式控制字格式</p><p> 3.4 系統(tǒng)所選用各芯片的連接</p><p> 1、各芯片與CPU的連接</p><p> 825
41、9A、8255A、8253的數(shù)據(jù)總線D7~D0端、端、端、端、端、INT端分別與CPU的D7~D0數(shù)據(jù)總線、片選端、端、端、端、INTR端。8255A、8253的A1、A0端分別接入CPU地址線的A1、A0端,8259的A0端接到CPU地址線的A0端。</p><p> 2、各芯片之間的連接和與外設(shè)的連接</p><p> 8259A的IR2端接選手按鍵信息輸出端;8255A的A口的P
42、A3~PA0依次接“按鍵1”~“按鍵4”,B口的PB7~PB0通過驅(qū)動器1接到LED顯示器,C口的PC4、PC5分別接復(fù)位鍵和開始鍵,PC3、PC2、PC1經(jīng)驅(qū)動器2分別接綠燈發(fā)光二極管、紅燈發(fā)光二極管、黃燈發(fā)光二極管,PC0接到8253的GATE1端;8253的GATE0端接+5V電壓,OUT0的輸出接入CLK1端,OUT1的輸出經(jīng)反相器后接入GATE2端,CLK0和CLK1接入1MHz的頻率發(fā)生器,CLK2經(jīng)驅(qū)動器3接揚聲器。<
43、;/p><p> 3.5 硬件原理圖及其說明</p><p> 為了對搶答后的回答時間進行計時控制,可以利用一個可編程定時計時器,先置計數(shù)初值,再計時,當(dāng)計時時間到后,由并行接口輸出一個響鈴信號提示搶答選手的回答時間已到。</p><p> 由于本系統(tǒng)要求對犯規(guī)的組亮紅燈警告,所以要設(shè)置一個啟動按鍵,在主持人按下啟動按鍵之前,如果有搶答鈕被按下,則該搶答選手犯
44、規(guī),可以通過并行接口輸出一個信號使該組的紅色發(fā)光二級管點亮以示該組選手犯規(guī)。</p><p> 綜上所述,本實驗的硬件電路設(shè)計如圖。</p><p> 3-3-1 硬件電路設(shè)計圖</p><p> 第四章 軟件設(shè)計</p><p><b> 4.1 流程圖</b></p><p&g
45、t; 4.2 源程序清單和注釋</p><p><b> 1.主程序清單</b></p><p> DATASEGMENT</p><p> TAB DB06H,5BH,4FH,66H,6DH,7CH,07H,7FH,67H ;1~9的段碼</p><p><b> ;(字形碼
46、)</b></p><p> BZ DB 00H</p><p> DATAENDS</p><p> STACKSEGMENTPARASTACK‘STACK’</p><p> DB100HDUP(?)</p><p> STACKENDS</p>
47、;<p> CODE SEGMENT</p><p> ASSUME DS:DATA,CS:CODE</p><p> START:MOV AX,DATA</p><p> MOV DS,AX</p><p><b> ;8259A初始化</b></p><
48、p> MOV AL,13H;初始化8259A的ICW1</p><p> OUT 20H,AL</p><p> MOV AL,08H ;送中斷類型碼基值,8259A的ICW2</p><p> OUT 21H,AL</p><p> MOV AL,0DH ;一般中斷結(jié)束方式,82
49、59A的ICW4 </p><p> OUT 21H,AL</p><p><b> ;8255A初始化</b></p><p> MOV AL,98H;置8255A工作方式</p><p> OUT 83H,AL</p><p> XOR AL,AL ;B口
50、、C口初始化</p><p> OUT 81H,AL</p><p> OUT 82H,AL</p><p><b> ;8253初始化</b></p><p> MOV AL,37H;置8253通道0控制字</p><p> OUT 43H,AL</p>
51、<p> MOV AL,00H;置8253通道0計數(shù)初值為4000</p><p> OUT 40H,AL</p><p> MOV AL,40H</p><p> OUT 40H,AL</p><p> MOV AL,73H;置8253 通道1控制字</p>
52、<p> OUT 43H,AL</p><p> MOV AL,00H;置8253通道1計數(shù)初值為3000 OUT41H,AL</p><p> MOV AL,30H</p><p> OUT 41H,AL</p><p> MOV AL,0B7H ;置82
53、53通道2控制字</p><p> OUT 43H,AL</p><p> MOV AL,00H ;置8253通道2控制字</p><p> OUT 42H,AL</p><p> MOV AL,00H ;置8253通道2計數(shù)初值為0</p><p> OUT 42
54、H,AL</p><p> MOV AL,00H</p><p> OUT 42H,AL</p><p><b> ;中斷設(shè)置</b></p><p> MOV AH,25H ;設(shè)置搶答按鍵中斷向量</p><p> MOV AL,0AH ;中斷類型
55、號為入口參數(shù)</p><p> MOV BX,SEG KEYINT ;DS:DX指向4字節(jié)地址</p><p> MOV DS,BX</p><p> MOV DX,OFFSET KEYINT</p><p><b> INT 21H</b></p><p> STI
56、 ;使IF置1,開放可屏蔽中斷</p><p><b> ;主循環(huán)</b></p><p> LOPM:INAL,82H ;檢測開始鍵</p><p> TESTAL,20H ;檢測C口的PC5端</p><p> JZ LOP2 ;開始鍵未按下即PC5=0,則跳轉(zhuǎn)檢測
57、</p><p><b> ;復(fù)位鍵</b></p><p> LOP1:INAL,82H ;檢測開始鍵是否已經(jīng)彈起,即PC5=0</p><p> TESTAL,20H</p><p> JNZ LOP1 ;開始鍵沒有彈起再重新檢測</p><p>
58、 MOV AL,00H ;關(guān)LED顯示器</p><p> OUT 81H,AL ;送到B口</p><p> MOV AL,08H ;綠燈亮</p><p> OUT 82H,AL ;送到C口</p><p> MOV BZ,0FFH ;置標志</p><
59、;p> STI</p><p> LOP2:INAL,82H ;檢測復(fù)位鍵</p><p> TESTAL,10H ;檢測C口的PC4端</p><p> JZLOPM ;復(fù)位鍵未按下即PC4=0,則跳轉(zhuǎn)再檢</p><p><b> ;測開始鍵</
60、b></p><p> LOP3:INAL,82H ;檢測復(fù)位鍵是否彈起,即PC4=0</p><p> TEST AL,10H</p><p> JNZ LOP3 ;位鍵沒有彈起,則重新檢測</p><p> MOV AL,00H ;關(guān)LED顯示器、指標燈</p>
61、<p> OUT 81H,AL</p><p> OUT 82H,AL</p><p> MOV BZ,00H ;清標志</p><p> STI</p><p><b> JMPLOPM</b></p><p> ;
62、中斷服務(wù)子程序……</p><p><b> CODEENDS</b></p><p><b> ENDSTART</b></p><p><b> 2.子程序清單</b></p><p><b> ;中斷服務(wù)子程序</b></p>
63、<p> KEYINTPROCFAR</p><p> PUSHAX;保護現(xiàn)場</p><p><b> PUSHBX</b></p><p><b> PUSH DX</b></p><p><b> PUSHDS</b><
64、;/p><p> CLI;并使本次中斷壓入堆棧中的IF=0</p><p><b> ;(關(guān)中斷)</b></p><p> INAL,80H;從8255的A口獲取選手按鍵信息</p><p> NOT AL;將按鍵字節(jié)信息取反</p><p> MOV
65、 CX,4;計數(shù)4次</p><p> LOP4:SHRAL,1;獲取選手號碼</p><p> LOOPNZ LOP4</p><p> MOV AX,CX;把選手號傳給AX</p><p> MOV BX,0FFSETTAB;查段碼(字形碼)</p><p>
66、; XLAT;將選手號轉(zhuǎn)換成TAB中對應(yīng)的LED</p><p><b> ;字形碼</b></p><p> OUT 81H,AL</p><p> TESTBZ,0FFH;判斷標志位是否為FFH</p><p><b> JZLOP5</b></p&
67、gt;<p> MOV AL,00H;置8253通道2計數(shù)值</p><p> OUT 42H,AL</p><p> MOV AL,10H</p><p> OUT 42H,AL</p><p> MOV AL,03H;黃燈亮,搶答成功</p><p> OUT
68、 82H,AL</p><p><b> JMPKKK</b></p><p> LOP5:MOV AL,00H;置8253通道2計數(shù)值</p><p> OUT 42H,AL</p><p> MOV AL,20H</p><p> OUT 42H,AL&
69、lt;/p><p> MOV AL,05H;紅燈亮,搶答違規(guī)</p><p> OUT 82H,AL</p><p> KKK:MOV AL,20H;給8259發(fā)中斷結(jié)束命令,寫OCW2</p><p> OUT 20H,AL</p><p> POPAX;
70、恢復(fù)現(xiàn)場</p><p><b> POPBX</b></p><p><b> POPDX</b></p><p><b> POPDS</b></p><p> IRET</p><p> KEYINT EN
71、DP</p><p> 第五章 調(diào)試過程</p><p><b> 調(diào)試過程如下:</b></p><p><b> 圖5-1</b></p><p><b> 圖5-2</b></p><p><b> 圖5-3</b&
72、gt;</p><p><b> 圖5-4</b></p><p><b> 圖5-5</b></p><p><b> 總 結(jié)</b></p><p> 本次課程設(shè)計是繼微機原理與接口技術(shù)實驗后,對各可編程芯片的綜合應(yīng)用。通過這一段時間的學(xué)習(xí)和研究,再次熟悉了各芯片
73、的組成和工作特點。設(shè)計中理論聯(lián)系實際,也鞏固了理論知識,對期末微機原理課程的復(fù)習(xí)也有一定的幫助。但在沒有硬件實驗的條件下完成,設(shè)計起來比較困難。</p><p> 軟件設(shè)計需要先繪制系統(tǒng)工作時的流程圖,這就要把系統(tǒng)的不同工作情況分析清楚。通過軟件部分的設(shè)計,熟練了對可編程芯片控制程序的編寫,如對控制字的理解等。</p><p> 由于我的能力和時間的限制,沒能通過硬件的驗證實驗,只是通
74、過查找一些資料和大腦抽象來設(shè)計本次課程設(shè)計,設(shè)計的搶答器還存在一些問題有待改進。</p><p> 因為在實驗的過程中得到了老師及同學(xué)的大力支持與幫助,所以才能這么快的完成設(shè)計要求??偟膩碚f這次課程設(shè)計我收獲了很多東西,使我的動手能力有了極大的提高,也讓我在考慮問題的多樣性方面更加全面。</p><p><b> 參考文獻</b></p><p
75、> 1、楊居義·《微機原理與接口技術(shù)項目教程》[M]·北京:清華大學(xué)出版社</p><p> 2、王忠民·《微型計算機原理》·西安電子科技大學(xué)出版社</p><p> 3、張雪蘭、譚毓安·《匯編語言程序設(shè)計》[M]·北京:清華大學(xué)出版社</p><p> 4﹑呂林濤·《微型計算機原理
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 微機原理與接口技術(shù)課程設(shè)計---智能搶答器
- 《微機原理與接口技術(shù)》課程設(shè)計---搶答器
- 《微機原理與接口技術(shù)》搶答器課程設(shè)計報告
- 微機原理課程設(shè)計---八路搶答器
- 微機原理課程設(shè)計搶答器
- 微機原理課程設(shè)計---4路競賽搶答器
- 微機課程設(shè)計--8路搶答器
- 四路搶答器課程設(shè)計
- 四路搶答器課程設(shè)計
- 四路搶答器課程設(shè)計
- 微機原理課程設(shè)計---競賽搶答器設(shè)計
- 競賽搶答器課程設(shè)計-微機接口課程設(shè)計報告
- 搶答器課程設(shè)計--八路搶答器
- 電子技術(shù)課程設(shè)計----5路搶答器
- 競賽搶答器課程設(shè)計-微機接口課程設(shè)計報告
- eda課程設(shè)計—四路搶答器
- 四路搶答器課程設(shè)計報告
- 四路搶答器eda課程設(shè)計
- 微機課程設(shè)計報告搶答器
- 四路搶答器eda課程設(shè)計
評論
0/150
提交評論