八路搶答器(匯編程序)微機課程設(shè)計_第1頁
已閱讀1頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、<p><b>  微機原理與接口技術(shù)</b></p><p><b>  課程設(shè)計</b></p><p><b>  競賽搶答器</b></p><p><b>  摘要</b></p><p>  搶答器是在競賽、文體娛樂活動中,能準(zhǔn)確、公

2、正、直觀地判斷出搶答者的機器。通過搶答者的指示燈顯示、數(shù)碼顯示和提示聲音等手段指示出第一搶答者。</p><p>  隨著科學(xué)技術(shù)的不斷發(fā)展,促使人們學(xué)科學(xué),學(xué)技術(shù),學(xué)知識的手段多種多樣,搶答器作為一種強大的工具,已經(jīng)廣泛應(yīng)用于各種知識能力競賽場合,例如選拔人才、評選優(yōu)勝及各種智力競賽等。</p><p>  目前知識競賽類的活動愈加頻繁,凡是有知識競賽類的活動那么也就必然離不開搶答器。針

3、對主持人提出的問題,各組一般要進行必答和搶答,對于搶答,要判定哪組先按鍵,為了公正,這就要有一種邏輯電路搶答器作為裁判員。這種數(shù)字搶答器杜絕了人為因素的影響,實現(xiàn)了搶答公正公平的原則。所以操作簡單、經(jīng)濟適用的小型數(shù)字搶答器將流行語各類競賽中,成為小規(guī)模知識競賽的首選。</p><p>  被設(shè)計就是利用了微機原理課程中學(xué)到的微機原理知識,運用8086CPU及8253、8255等元件設(shè)計的可供8人同時搶答,具有顯示

4、選手編號、提示選手聲音的競賽搶答器。</p><p>  關(guān)鍵詞:競賽搶答器 微機原理 顯示選手編號 發(fā)出提示聲音 8253及8255</p><p><b>  目 錄</b></p><p>  1. 關(guān)于搶答器的概述及設(shè)計要求2</p><p>  1.1數(shù)字搶答器的簡介2</p>&

5、lt;p>  1.2課程設(shè)計要求2</p><p><b>  1.3實現(xiàn)功能3</b></p><p><b>  2. 總體設(shè)計4</b></p><p>  2.1功能需求分析4</p><p>  2.2可行性分析4</p><p>  2.3硬件總體

6、設(shè)計4</p><p>  2.3.1硬件器材4</p><p>  2.3.2內(nèi)存單元地址4</p><p>  2.4軟件流程圖5</p><p><b>  3. 硬件設(shè)計6</b></p><p>  3.1所選芯片介紹6</p><p>  3.1.1

7、可編程并行接口接口芯片8255A6</p><p>  3.1.2可編程定時器/計數(shù)器82537</p><p>  3.2系統(tǒng)所選用各芯片的連接8</p><p>  3.2.1各芯片與CPU的連接8</p><p>  3.2.2各芯片之間的連接和與外設(shè)的連接8</p><p><b>  4.

8、 軟件設(shè)計9</b></p><p><b>  4.1程序流程9</b></p><p>  4.2子程序清單9</p><p>  4..2.1 芯片8255初始化:9</p><p>  4..2.2芯片8253初始化:9</p><p>  4..2.3獲取選手號碼子

9、程序:9</p><p>  4.2.4數(shù)碼管顯示子程序:10</p><p>  4.2.5揚聲器鳴叫時間:11</p><p>  5. 結(jié)果分析12</p><p><b>  結(jié)束語13</b></p><p><b>  參考文獻14</b></p

10、><p><b>  附錄14</b></p><p><b>  主程序清單14</b></p><p>  1 關(guān)于搶答器的概述及設(shè)計要求</p><p>  1.1數(shù)字搶答器的簡介</p><p>  搶答器是在競賽、文體娛樂活動(搶答活動)中,能準(zhǔn)確、公正、直觀地判

11、斷出搶答者的機器。通過搶答者的指示燈顯示、數(shù)碼顯示和警示顯示等手段指示出第一搶答者。</p><p>  隨著科學(xué)技術(shù)的不斷發(fā)展,促使人們學(xué)科學(xué),學(xué)技術(shù),學(xué)知識的手段多種多樣,搶答器作為一種強大工具,已經(jīng)廣泛應(yīng)用于各種知識能力競賽場合,例如選拔人才、評選優(yōu)勝及各種智力競賽等。</p><p>  目前知識競賽之類的活動愈加頻繁,凡是有知識競賽類的活動那么也就必然離不開搶答器。針對主持人提出

12、的問題,各組一般要進行必答和搶答,對于搶答,要判定哪組先按鍵,為了公正,這就要有一種邏輯電路搶答器作為裁判員。這種數(shù)字搶答器杜絕了人為因素的影響,實現(xiàn)了搶答公平公正的原則。所以操作簡單、經(jīng)濟實用的小型數(shù)字搶答器將流行于各類競賽中,成為小規(guī)模知識競賽的首選。</p><p><b>  1.2課程設(shè)計要求</b></p><p>  內(nèi)容:用微機原理實驗箱,在外接8個按

13、鍵的搶按下,讓7段LED數(shù)碼管顯示搶答者編號,并使喇叭響一下。</p><p><b>  具體要求:</b></p><p>  通過實驗箱上8255芯片接收來自實驗箱按鍵的信息,將該信息送入8088CPU,由CPU判斷是哪個按鍵按下;</p><p>  8088CPU將判斷出的按鍵信息轉(zhuǎn)換為7段顯示碼,并通過8255芯片發(fā)送到7段顯示模塊

14、顯示;</p><p>  在顯示按鍵信息的同時通過實驗箱上8253芯片產(chǎn)生一定頻率的方波信號發(fā)送到音頻功放模塊,發(fā)出聲音;</p><p>  提高要求: 能對幾乎同時發(fā)生的按鍵進行判別,找到先按的鍵。</p><p><b>  1.3實現(xiàn)功能</b></p><p>  當(dāng)沒有選手按下按鍵時,LED數(shù)碼管顯示“-”

15、符號,表示此時可以進行搶答,當(dāng)搶答開始,選手按下8路搶答器中的任何一路開關(guān)時,8段LED數(shù)碼管上顯示最先按開關(guān)的選手的號碼,同時蜂鳴器鳴叫一段時間以示已經(jīng)有人搶答成功。</p><p>  當(dāng)一位選手搶答成功時,數(shù)碼管上顯示這位選手的號碼,此時其他選手再按下按鍵不會產(chǎn)生任何作用,系統(tǒng)進入鎖死狀態(tài),當(dāng)搶答成功的選手退下按鍵時,LED數(shù)碼管顯示“-”符號,表示系統(tǒng)已經(jīng)初始化,可以進行下一輪搶答。</p>

16、<p><b>  2 總體設(shè)計</b></p><p><b>  2.1功能需求分析</b></p><p>  系統(tǒng)必須準(zhǔn)確判斷搶答者的信息,根據(jù)按鍵信息判斷被按下的按鍵的序號,在LED數(shù)碼管上顯示相應(yīng)的數(shù)字反映搶答信息,同時蜂鳴器響一聲以示有選手搶答成功。</p><p><b>  2.2

17、可行性分析</b></p><p>  將8個搶答器按鍵連接到8255芯片的PA0~PA7,當(dāng)8組均未按下?lián)尨鸢粹o時,送入到并行接口的8位搶答狀態(tài)都是0,當(dāng)檢測到按鍵發(fā)生變化時,即微機采樣到這8位數(shù)據(jù)不為0時,微機通過該并行輸入口循環(huán)對8路搶答信號進行采樣。</p><p>  當(dāng)采樣到哪一組的搶答信號已經(jīng)發(fā)出,則記錄下該組的組號,從PB口輸出組號所對應(yīng)的LED數(shù)碼管段碼,同時

18、PC7端口連接至定時器的門控信號端口,使定時器工作,輸出端連接到蜂鳴器,蜂鳴器鳴叫一段時間后關(guān)閉,若系統(tǒng)檢測到按鍵信息全為0時,表明選手已經(jīng)把按鍵退下,則系統(tǒng)重新開始檢測按鍵狀態(tài),進入下一個搶答環(huán)節(jié)。</p><p><b>  2.3硬件總體設(shè)計</b></p><p><b>  2.3.1硬件器材</b></p><p&

19、gt;  所需器件:可編程并行接口芯片8255、可編程定時器/計數(shù)器8253,揚聲器,一個LED顯示器,8個按鍵。</p><p>  2.3.2內(nèi)存單元地址</p><p>  ①可編程并行接口接口芯片8255A的端口地址為0ff28H、0ff29H、0ff2AH、0ff2BH。</p><p>  ②可編程定時器/計數(shù)器8253的端口地址為0040H、0041H

20、、0042H、0043H。</p><p><b>  2.4軟件流程圖</b></p><p><b>  3 硬件設(shè)計</b></p><p><b>  3.1所選芯片介紹</b></p><p>  3.1.1可編程并行接口接口芯片8255A</p>&

21、lt;p>  ①8255A內(nèi)部結(jié)構(gòu)</p><p>  8255A芯片是一個采用NMOS工藝制造的40引腳雙列直插式(DIP)封裝組件。8255A有3個8位數(shù)據(jù)端口,即A口、B口及C口,它們都可以分別作為輸入口或輸出口使用;A組控制與B組控制;讀/寫控制邏輯;數(shù)據(jù)總路線緩沖器。</p><p> ?、?255A主要的外部引腳</p><p>  圖2 825

22、5A引腳圖</p><p>  PA7~PA0:A口的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位,這兩組可以

23、任意設(shè)置為輸入或輸出。除了作為獨立的I/O線外,C口還經(jīng)常為A口、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> ?、?255A工作方式</p><p>  方式0

24、:基本的輸入/輸出方式。A口、B口、C口都可以工作在些方式下。</p><p>  ④8255A方式控制字格式</p><p>  表1 8255方式控制字</p><p>  3.1.2可編程定時器/計數(shù)器8253</p><p> ?、?253的內(nèi)部結(jié)構(gòu)</p><p>  8253采用NMOS工藝制成,有24個

25、引腳,所有輸入、輸出端均TTL電平兼容,單一電源(Vcc=+5V)供電,最高計數(shù)速率為2.6MHz。它包括3個計數(shù)器(即計數(shù)器0、1、2)、數(shù)據(jù)總路線緩沖器、讀/寫邏輯以及控制寄存器等4個部分。</p><p> ?、?253的外部引腳</p><p>  圖3 8253引腳圖</p><p>  A1、A0:地址輸入線,用來址8253內(nèi)部的4個端口,即3個計數(shù)器

26、和1個控制字寄存器與CPU系統(tǒng)地址線相連。</p><p>  CLK0、CLK1、CLK2:時鐘脈沖輸入端,用于輸入定時脈沖或計數(shù)脈沖信號。CLK可以是系統(tǒng)的時鐘脈沖,也可以由系統(tǒng)時鐘分頻或者其他脈沖源提供。當(dāng)用于定時時,這個脈沖必須是均勻的、連續(xù)的、周期精確的,而用于計數(shù)時,這個脈沖可以是不均勻的、斷續(xù)的、周期不定的。</p><p>  GATE0、GATE1、GATE3:門控輸入端

27、,用于外部控制計數(shù)器的啟動計數(shù)和停止計數(shù)的操作。兩個或兩個以上計數(shù)器連用時,可用此信號同步,也可用于與外部某信號的同步。</p><p>  OUT0、OUT1、OUT2:計數(shù)輸出,當(dāng)計數(shù)器從初值開始完成計數(shù)操作進,OUT引腳輸出相應(yīng)的信號。</p><p>  ③8253的工作方式</p><p>  方式0:減1計數(shù)到0,產(chǎn)生中斷請求信號。</p>

28、<p>  方式3:減1計數(shù)到初值的1/2,方波發(fā)生器。</p><p> ?、?253方式控制字格式</p><p>  表2 8253方式控制字</p><p>  3.2系統(tǒng)所選用各芯片的連接</p><p>  3.2.1各芯片與CPU的連接</p><p>  8255A、8253的數(shù)據(jù)總線D7

29、~D0端、端、端、端、端、INT端分別與CPU的D7~D0數(shù)據(jù)總線、片選端、端、端、端、INTR端。8255A、8253的A1、A0端分別與CPU地址線的A1、A0端相連。</p><p>  3.2.2各芯片之間的連接和與外設(shè)的連接</p><p>  8255A的A口的PA7~PA0依次接“按鍵1”~“按鍵8”,B口的PB7~PB0通過驅(qū)動器1接到LED顯示器,8253的GATE0端接

30、PC7端口,CLK0接1MHz,OUT0的輸出接入接揚聲器。</p><p><b>  4 軟件設(shè)計</b></p><p><b>  4.1程序流程</b></p><p>  設(shè)定好8255、8253的方式控制字后,根據(jù)讀取8255PA端口的狀態(tài)值,獲取選手的具體號碼,從而轉(zhuǎn)到相應(yīng)程序,將號碼所對應(yīng)的段碼輸出到P

31、B端口進行數(shù)碼管顯示。同時將PC7置1,使相連的GATE0門控信號為1,通道0進行計數(shù),輸出到揚聲器進行鳴叫。</p><p><b>  4.2子程序清單</b></p><p>  4.2.1 芯片8255初始化:</p><p>  PORT_A EQU 0FF28H</p><p>  PORT_B EQU 0F

32、F29H</p><p>  PORT_C EQU 0FF2AH</p><p>  PORT_CTL EQU 0FF2BH</p><p>  MOV AL,90H ;8255控制字 A組方式0輸入 </p><p>  MOV DX,PORT_CTL ;B組方式0輸出 C口輸出 </p&g

33、t;<p><b>  OUT DX,AL</b></p><p>  4.2.2芯片8253初始化:</p><p>  MOV AL,00110110B ;8253控制字 計數(shù)器0 讀寫字 </p><p>  MOV DX,43H ;工作方式方式3 </p><p>&l

34、t;b>  OUT DX,AL</b></p><p>  MOV AX,5000 ;計數(shù)器初值 </p><p>  MOV DX,40H </p><p><b>  OUT DX,AL</b></p><p><b>  MOV AL,AH</b&g

35、t;</p><p><b>  OUT DX,AL</b></p><p>  4.2.3獲取選手號碼子程序:</p><p>  在硬件電路中,8255的PA端口連接開關(guān)按鍵,根據(jù)讀取PA的狀態(tài)可以判斷出按下的是哪個鍵(按下為高電平),根據(jù)進行移位操作,可得出選手的具體號碼。</p><p>  MOV DX,POR

36、T_A ;讀取A口狀態(tài)(按鍵狀態(tài))</p><p><b>  IN AL,DX</b></p><p>  CMP AL,00000000B ;無按鍵按下 返回LED1 </p><p><b>  JE LED1</b></p><p>  CMP AL,0000000

37、1B ;按鍵1</p><p><b>  JE LP1</b></p><p>  CMP AL,00000010B ;按鍵2</p><p><b>  JE LP2</b></p><p>  CMP AL,00000100B ;按鍵3</p><p

38、><b>  JE LP3</b></p><p>  CMP AL,00001000B ;按鍵4</p><p><b>  JE LP4</b></p><p>  CMP AL,00010000B ;按鍵5</p><p><b>  JE LP5</b&

39、gt;</p><p>  CMP AL,00100000B ;按鍵6</p><p><b>  JE LP6</b></p><p>  CMP AL,01000000B ;按鍵7</p><p><b>  JE LP7</b></p><p>  CM

40、P AL,10000000B ;按鍵8</p><p><b>  JE LP8</b></p><p>  JMP LED1 ;返回</p><p>  4.2.4數(shù)碼管顯示子程序:</p><p>  根據(jù)獲取得到選手的號碼,跳轉(zhuǎn)相應(yīng)程序,將段碼輸出給PB端口。</p>

41、<p><b>  LP1:</b></p><p>  MOV DX,PORT_B ;數(shù)碼管顯示1 </p><p>  MOV AL,11111001B</p><p><b>  OUT DX,AL</b></p><p><b>  LP2:</b>

42、;</p><p>  MOV DX,PORT_B ;數(shù)碼管顯示2 </p><p>  MOV AL,10100100B</p><p><b>  OUT DX,AL</b></p><p><b>  …</b></p><p><b>  L

43、P8:</b></p><p><b>  …</b></p><p>  4.2.5揚聲器鳴叫時間:</p><p><b>  PUSH DX</b></p><p><b>  PUSH AX</b></p><p>  MOV AL,

44、00001111B ;8255 PC7口置1,使蜂鳴器工作</p><p>  MOV DX,PORT_CTL</p><p><b>  OUT DX,AL</b></p><p><b>  POP AX</b></p><p><b>  POP DX</b>&

45、lt;/p><p>  MOV BL,00000000B</p><p>  MOV CX,0FFFFH ;延時一段時間</p><p>  LPP2:LOOP LPP2</p><p>  MOV CX,0FFFH</p><p>  LPP3:LOOP LPP3</p><p>&

46、lt;b>  PUSH DX</b></p><p><b>  PUSH AX</b></p><p>  MOV AL,00001110B ;8255 PC7口置0,蜂鳴器停止工作</p><p>  MOV DX,PORT_CTL</p><p><b>  OUT DX,AL

47、</b></p><p><b>  POP AX</b></p><p><b>  POP DX</b></p><p><b>  5 結(jié)果分析</b></p><p>  連接硬件電路后,控制程序輸出得到相應(yīng)結(jié)果:</p><

48、;p>  圖5 硬件顯示結(jié)果</p><p>  由上結(jié)果可看出,當(dāng)按鍵3按下的時候,數(shù)碼管顯示數(shù)字3,揚聲器進行鳴叫,在無按鍵按下時,LED數(shù)碼管顯示符號“-”,可得程序設(shè)計及硬件連接能達到題目要求。</p><p><b>  結(jié)束語</b></p><p>  轉(zhuǎn)眼間一周微機課程設(shè)計轉(zhuǎn)眼就結(jié)束了,通過這次課程設(shè)計,我學(xué)會了許多課本

49、上學(xué)不到的東西,同時也加強了我的動手、思考和解決問題的能力,受益匪淺。課程設(shè)計過程中,我覺得是對課本知識的鞏固和加強,由于課本上的知識太多,同時平時課間又沒有好好的運用額理解個芯片的功能,而且考試的內(nèi)容有限,所以在這次課程設(shè)計過程中,我們了解很多元件的功能,對其在電路中的使用有更多的認(rèn)識。</p><p>  從前的學(xué)習(xí)過程過于浮淺,只是流于表面的理解,而現(xiàn)在要做課程設(shè)計,就不得不要求我們對所用到的知識有更深層次

50、的理解。因為課程設(shè)計的內(nèi)容比及書本中的理論知識而言,更接近于現(xiàn)實生活,而理論到實踐的轉(zhuǎn)化往往是一個艱難的過程,它猶如一只攔路虎,橫更在我們的面前。但是我們毫不畏懼,因為我們相信我們能行。</p><p>  前幾天的主要任務(wù)是設(shè)計程序。雖然在設(shè)計中會遇到這樣那樣的問題,有時認(rèn)為是正確的,而在仿真中卻出現(xiàn)了這樣那樣的問題。</p><p>  軟件部分做好了,下面就是接線啦,這可是一個比較麻

51、煩的事。在接線的時候要細心和耐心、恒心,這樣才能做好事情。同時接好了一步電路以后,最為重要的是檢查這部分是不是接對了。</p><p>  在做硬件測試的時候,八個數(shù)字基本能顯示,但還是有點缺陷,比如顯示數(shù)字1的時候,顯示的不對,后來在老師幫助下解決了這個問題。</p><p>  通過這次課程設(shè)計使我懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠遠不夠的,只有把所學(xué)的理論知識與實踐相

52、結(jié)合起來,從理論中得出結(jié)論,才能真正為社會服務(wù),從而提高自己的實際動手能力和獨立思考的能力。在設(shè)計的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時在設(shè)計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固。</p><p>  此次課程設(shè)計,學(xué)到了很多課內(nèi)學(xué)不到的東西,比如獨立思考解決問題,出現(xiàn)差錯的隨機應(yīng)變,和與人合作共同提高,都受益非淺,今后的

53、制作應(yīng)該更輕松,自己也都能扛的起并高質(zhì)量的完成項目。</p><p>  最后,我要感謝給予我們精心輔導(dǎo)的老師。</p><p><b>  參考文獻</b></p><p>  [1].朱金鈞,麻新旗.《微型計算機原理及應(yīng)用技術(shù)》[M].機械工業(yè)出版社.56-60</p><p>  [2].王松武,于鑫,武思君.《

54、電子創(chuàng)新設(shè)計與實踐》[M].國防工業(yè)出版2005,112-114.</p><p>  [3].馮博琴.《微型計算機原理及接口技術(shù)》[M].清華大學(xué)出版社.128-140</p><p>  [4].仁向民.《微機接口技術(shù)實用教程》[M].清華大學(xué)出版社.155-161</p><p>  [5].劉紅玲,邵曉根.《微機原理與接口技術(shù)》[M].中國電力出版社.178

55、-190</p><p>  [6].江正戰(zhàn),沈志鴻.《三級偏硬考試教程》[M].東南大學(xué)出版社.211-244</p><p>  [7].閻石.《數(shù)字電子技術(shù)基礎(chǔ)》[M].高等教育出版社.144-166</p><p>  [8].張雪蘭,譚毓安.《匯編語言程序設(shè)計》[M].清華大學(xué)出版社.49-57</p><p><b> 

56、 附錄</b></p><p><b>  主程序清單</b></p><p>  PORT_A EQU 0FF28H</p><p>  PORT_B EQU 0FF29H</p><p>  PORT_C EQU 0FF2AH</p><p>  PORT_CTL EQU 0FF2

57、BH</p><p>  CODE SEGMENT</p><p>  ASSUME CS:CODE</p><p><b>  ORG 11B0H</b></p><p><b>  START:</b></p><p>  MOV AL,90H ;82

58、55控制字 A組方式0輸入 </p><p>  MOV DX,PORT_CTL ;B組方式0輸出 C口輸出 </p><p>  OUT DX,AL </p><p>  MOV AL,00110110B ;8253控制字 計數(shù)器0 讀寫字 </p><p>  MOV DX,43H ;工作方式

59、方式3 </p><p><b>  OUT DX,AL</b></p><p>  MOV AX,5000 ;計數(shù)器初值 </p><p>  MOV DX,40H </p><p><b>  OUT DX,AL</b></p><p>&

60、lt;b>  MOV AL,AH</b></p><p><b>  OUT DX,AL</b></p><p><b>  LED1:</b></p><p>  MOV BL,00000001B ;設(shè)置全局變量 BL</p><p>  MOV AL,00001110B

61、 ;PC7端口置0 </p><p>  MOV DX,PORT_CTL</p><p><b>  OUT DX,AL</b></p><p>  MOV DX,PORT_B ;在數(shù)碼管顯示符號"-" </p><p>  MOV AL,10111111B</

62、p><p><b>  OUT DX,AL</b></p><p>  MOV DX,PORT_A ;讀取A口狀態(tài)(按鍵狀態(tài))</p><p><b>  IN AL,DX</b></p><p>  CMP AL,00000000B ;無按鍵按下 返回LED1 </p>

63、;<p><b>  JE LED1</b></p><p>  CMP AL,00000001B ;按鍵1</p><p><b>  JE LP1</b></p><p>  CMP AL,00000010B ;按鍵2</p><p><b>  JE L

64、P2</b></p><p>  CMP AL,00000100B ;按鍵3</p><p><b>  JE LP3</b></p><p>  CMP AL,00001000B ;按鍵4</p><p><b>  JE LP4</b></p><

65、p>  CMP AL,00010000B ;按鍵5</p><p><b>  JE LP5</b></p><p>  CMP AL,00100000B ;按鍵6</p><p><b>  JE LP6</b></p><p>  CMP AL,01000000B

66、;按鍵7</p><p><b>  JE LP7</b></p><p>  CMP AL,10000000B ;按鍵8</p><p><b>  JE LP8</b></p><p>  JMP LED1 ;返回 </p><p><

67、;b>  LP1:</b></p><p>  MOV DX,PORT_B ;數(shù)碼管顯示1 跳轉(zhuǎn)LP9 </p><p>  MOV AL,11111001B</p><p><b>  OUT DX,AL</b></p><p><b>  JMP LP9</b>

68、</p><p><b>  LP2:</b></p><p>  MOV DX,PORT_B ;數(shù)碼管顯示2 跳轉(zhuǎn)LP9 </p><p>  MOV AL,10100100B</p><p><b>  OUT DX,AL</b></p><p><

69、b>  JMP LP9</b></p><p><b>  LP3:</b></p><p>  MOV DX,PORT_B ;數(shù)碼管顯示3 跳轉(zhuǎn)LP9 </p><p>  MOV AL,10110000B</p><p><b>  OUT DX,AL</b>&

70、lt;/p><p><b>  JMP LP9</b></p><p><b>  LP4:</b></p><p>  MOV DX,PORT_B ;數(shù)碼管顯示4 跳轉(zhuǎn)LP9 </p><p>  MOV AL,10011001B</p><p><b&g

71、t;  OUT DX,AL</b></p><p><b>  JMP LP9</b></p><p><b>  LP5:</b></p><p>  MOV DX,PORT_B ;數(shù)碼管顯示5 跳轉(zhuǎn)LP9 </p><p>  MOV AL,10010010B<

72、/p><p><b>  OUT DX,AL</b></p><p><b>  JMP LP9</b></p><p><b>  LP6:</b></p><p>  MOV DX,PORT_B ;數(shù)碼管顯示6 跳轉(zhuǎn)LP9 </p><p&g

73、t;  MOV AL,10000010B</p><p><b>  OUT DX,AL</b></p><p><b>  JMP LP9</b></p><p><b>  LP7:</b></p><p>  MOV DX,PORT_B ;數(shù)碼管顯示7 跳

74、轉(zhuǎn)LP9 </p><p>  MOV AL,11111000B</p><p><b>  OUT DX,AL</b></p><p><b>  JMP LP9</b></p><p><b>  LP8:</b></p><p>  MOV DX,

75、PORT_B ;數(shù)碼管顯示8 跳轉(zhuǎn)LP9 </p><p>  MOV AL,10000000B</p><p><b>  OUT DX,AL</b></p><p><b>  JMP LP9</b></p><p>  LP9: </

76、p><p>  MOV DX,PORT_A ;讀取按鍵狀態(tài) </p><p><b>  IN AL,DX</b></p><p>  CMP BL,00000001B ;全局變量BL與1比較 相同時跳轉(zhuǎn) </p><p><b>  JE DELAY2</b></p>

77、<p>  CMP AL,00000000B ;檢測按鍵是否清零,清零時跳DELAY1 </p><p>  JE DELAY1 </p><p>  JMP LP9 ;重復(fù)檢測A口狀態(tài) </p><p><b>  DELAY1:</b></p><p&

78、gt;  MOV CX,0FFFFH ;延時 返回LED1</p><p>  LPP1:LOOP LPP1 </p><p><b>  JMP LED1</b></p><p>  DELAY2: ;PC7口置1,8253開始工作 </p><p><b> 

79、 PUSH DX</b></p><p><b>  PUSH AX</b></p><p>  MOV AL,00001111B</p><p>  MOV DX,PORT_CTL</p><p><b>  OUT DX,AL</b></p><p><

80、b>  POP AX</b></p><p><b>  POP DX</b></p><p>  MOV BL,00000000B</p><p>  MOV CX,0FFFFH ;延時一段時間后,8253停止工作 </p><p>  LPP2:LOOP LPP2</p>

81、<p>  MOV CX,0FFFH</p><p>  LPP3:LOOP LPP3</p><p><b>  PUSH DX</b></p><p><b>  PUSH AX</b></p><p>  MOV AL,00001110B ;PC7口置0,8253停止工作

82、 </p><p>  MOV DX,PORT_CTL</p><p><b>  OUT DX,AL</b></p><p><b>  POP AX</b></p><p><b>  POP DX</b></p><p>  JMP LP9

溫馨提示

  • 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. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論