微機系統(tǒng)與接口技術實驗指導書不含匯編-打印精簡本_第1頁
微機系統(tǒng)與接口技術實驗指導書不含匯編-打印精簡本_第2頁
微機系統(tǒng)與接口技術實驗指導書不含匯編-打印精簡本_第3頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、.微機系統(tǒng)與接口技術實驗指導書李鶴喜張健金旺春五邑大學計算機學院2012-5. v.目 錄目錄I、系統(tǒng)認識實驗2一、8255并行接口實驗7二、8251串行接口應用實驗12三、8254定時/計數(shù)器應用實驗22四、8259中斷控制實驗27五、A/D轉換實驗35六、D/A轉換實驗38七、鍵盤掃描及顯示設計實驗41八、電子發(fā)聲設計實驗46. v.、系統(tǒng)認識實驗0.1 實驗目的掌握TD系列微機原理及接口技術教學實驗系統(tǒng)的操作,熟悉Wmd86聯(lián)機集成開發(fā)調試軟件的操作環(huán)境。0.2 實驗設備PC機一臺,TD-PITE實驗裝置或TD-PITC實驗裝置一套。0.3 實驗內容編寫實驗程序,將00H0FH共16個數(shù)

2、寫入內存3000H開始的連續(xù)16個存儲單元中。0.4 實驗步驟1. 運行Wmd86軟件,進入Wmd86集成開發(fā)環(huán)境。2. 根據(jù)程序設計使用語言的不同,通過在“設置”下拉列表來選擇需要使用的語言和寄存器類型,這里我們設置成“匯編語言”和“16位寄存器”,如圖0-1、圖0-2所示。設置選擇后,下次再啟動軟件,語言環(huán)境保持這次的修改不變。本章選擇16位寄存器。圖0-1 語言環(huán)境設置界面圖0-2 寄存器設置界面3. 語言和寄存器選擇后,點擊新建或按Ctrl+N組合鍵來新建一個文檔,如圖0-3所示。默認文件名為Wmd861。圖0-3 新建文件界面4. 編寫實驗程序,如圖0-4所示,并保存,此時系統(tǒng)會提示

3、輸入新的文件名,輸完后點擊保存。圖0-4 程序編輯界面5. 點擊,編譯文件,若程序編譯無誤,則可以繼續(xù)點擊進行鏈接,鏈接無誤后方可以加載程序。編譯、鏈接后輸出如圖0-5所示的輸出信息。圖0-5 編譯輸出信息界面6. 連接PC與實驗系統(tǒng)的通訊電纜,打開實驗系統(tǒng)電源。7. 編譯、鏈接都正確并且上下位機通訊成功后,就可以下載程序,聯(lián)機調試了。可以通過端口列表中的“端口測試”來檢查通訊是否正常。點擊下載程序。為編譯、下載組合按鈕,通過該按鈕可以將編譯、下載一次完成。下載成功后,在輸出區(qū)的結果窗中會顯示“加載成功!”,表示程序已正確下載。起始運行語句下會有一條綠色的背景。如圖0-6所示。圖0-6 加載成

4、功顯示界面8. 將輸出區(qū)切換到調試窗口,使用D0000:3000命令查看內存3000H起始地址的數(shù)據(jù),如圖0-7所示。存儲器在初始狀態(tài)時,默認數(shù)據(jù)為CC。圖0-7 內存地址單元數(shù)據(jù)顯示9. 點擊按鈕運行程序,待程序運行停止后,通過D0000:3000命令來觀察程序運行結果。如圖0-8所示。圖0-8 運行程序后數(shù)據(jù)變化顯示10. 也可以通過設置斷點,斷點顯示如圖0-9所示,然后運行程序,當遇到斷點時程序會停下來,然后觀察數(shù)據(jù)??梢允褂肊0000:3000來改變該地址單元的數(shù)據(jù),如圖0-10所示,輸入11后,按“空格”鍵,可以接著輸入第二個數(shù),如22,結束輸入按“回車”鍵。圖0-9 斷點設置顯示

5、圖0-10 修改內存單元數(shù)據(jù)顯示界面實驗例程文件名為Wmd861.asm。1.5 操作練習編寫程序,將內存3500H單元開始的8個數(shù)據(jù)復制到3600H單元開始的數(shù)據(jù)區(qū)中。通過調試驗證程序功能,使用E命令修改3500H單元開始的數(shù)據(jù),運行程序后使用D命令查看3600H單元開始的數(shù)據(jù)。一、8255并行接口實驗1.1 實驗目的1. 學習并掌握8255的工作方式及其應用。2. 掌握8255典型應用電路的接法。3. 掌握程序固化及脫機運行程序的方法。1.2 實驗設備PC機一臺,TD-PITE實驗裝置或TD-PITC實驗裝置一套。1.3 實驗內容1. 基本輸入輸出實驗。編寫程序,使8255的A口為輸入,B

6、口為輸出,完成撥動開關到數(shù)據(jù)燈的數(shù)據(jù)傳輸。要求只要開關撥動,數(shù)據(jù)燈的顯示就發(fā)生相應改變。2. 流水燈顯示實驗。編寫程序,使8255的A口和B口均為輸出,數(shù)據(jù)燈D7D0由左向右,每次僅亮一個燈,循環(huán)顯示,D15D8與D7D0正相反,由右向左,每次僅點亮一個燈,循環(huán)顯示。1.4 實驗原理圖1-1 8255內部結構及外部引腳圖并行接口是以數(shù)據(jù)的字節(jié)為單位與I/O設備或被控制對象之間傳遞信息。CPU和接口之間的數(shù)據(jù)傳送總是并行的,即可以同時傳遞8位、16位或32位等。8255可編程外圍接口芯片是Intel公司生產的通用并行I/O接口芯片,它具有A、B、C三個并行接口,用+5V單電源供電,能在以下三種方

7、式下工作:方式0-基本輸入/輸出方式、方式1-選通輸入/輸出方式、方式2-雙向選通工作方式。8255的內部結構及引腳如圖1-1所示,8255工作方式控制字和C口按位置位/復位控制字格式如圖1-2所示。圖1-2 8255控制字格式8255實驗單元電路圖如圖1-3所示:圖1-3 8255實驗單元電路圖1.5 實驗步驟1. 基本輸入輸出實驗本實驗使8255端口A工作在方式0并作為輸入口,端口B工作在方式0并作為輸出口。用一組開關信號接入端口A,端口B輸出線接至一組數(shù)據(jù)燈上,然后通過對8255芯片編程來實現(xiàn)輸入輸出功能。具體實驗步驟如下述:(1)實驗接線圖如圖1-4所示,按圖連接實驗線路圖。(2)編寫

8、實驗程序,經(jīng)編譯、連接無誤后裝入系統(tǒng)。(3)運行程序,改變撥動開關,同時觀察LED顯示,驗證程序功能。(4)點擊“調試”下拉菜單中的“固化程序”項,將程序固化到系統(tǒng)存儲器中。(5)將短路跳線JDBG的短路塊短接到RUN端,然后按復位按鍵,觀察程序是否正常運行;關閉實驗箱電源,稍等后再次打開電源,看固化的程序是否運行,驗證程序功能。(6)實驗完畢后,請將短路跳線JDBG的短路塊短接到DBG端。圖1-4 8255基本輸入輸出實驗接線圖實驗程序清單(A82551.ASM)SSTACKSEGMENT STACKDW 32 DUP(")SSTACKENDSCODESEGMENTASSUME C

9、S:CODESTART:MOV DX, 0646HMOV AL, 90HOUT DX, ALAA1:MOV DX, 0640HIN AL, DXCALL DELAYMOV DX, 0642HOUT DX, ALJMP AA1DELAY:PUSH CXMOV CX, 0F00HAA2:PUSH AXPOP AXLOOP AA2POP CXRETCODEENDSEND START2. 流水燈顯示實驗使8255的A口和B口均為輸出,數(shù)據(jù)燈D7D0由左向右,每次僅亮一個燈,循環(huán)顯示,D15D8與D7D0正相反,由右向左,每次僅點亮一個燈,循環(huán)顯示。實驗接線圖如圖4.35所示。實驗步驟如下所述:(1)按

10、圖1-5連接實驗線路圖。(2)編寫實驗程序,經(jīng)編譯、鏈接無誤后裝入系統(tǒng)。(3)運行程序,觀察LED燈的顯示,驗證程序功能。(4)自己改變流水燈的方式,編寫程序。(5)固化程序并脫機運行。圖1-5 8255流水燈實驗接線圖實驗程序清單(A82552.ASM)SSTACKSEGMENT STACKDW 32 DUP(")SSTACKENDSCODESEGMENTASSUME CS:CODESTART:MOV DX, 0646HMOV AL, 80HOUT DX, ALMOV BX, 8001HAA1:MOV DX, 0640HMOV AL, BHOUT DX, ALROR BH, 1MO

11、V DX, 0642HMOV AL, BLOUT DX, ALROL BL, 1 CALL DELAYCALL DELAYJMP AA1DELAY:PUSH CXMOV CX, 0F000HAA2:PUSH AXPOP AXLOOP AA2POP CXRETCODEENDSEND START二、8251串行接口應用實驗2.1 實驗目的1. 掌握8251的工作方式及應用。2. 了解有關串口通訊的知識。2.2 實驗設備PC機兩臺,TD-PITE實驗裝置或TD-PITC實驗裝置兩套。2.3 實驗內容1. 數(shù)據(jù)信號的串行傳輸實驗,循環(huán)向串口發(fā)送一個數(shù),使用示波器測量TXD引腳上的波形,以了解串行傳輸?shù)?/p>

12、數(shù)據(jù)格式。2. 自收自發(fā)實驗,將3000H起始的10個單元中的初始數(shù)據(jù)發(fā)送到串口,然后自接收并保存到4000H起始的內存單元中。3. 雙機通訊實驗,本實驗需要兩臺實驗裝置,其中一臺作為接收機,一臺作為發(fā)送機,發(fā)送機將3000H3009H內存單元中共10個數(shù)發(fā)送到接收機,接收機將接收到的數(shù)據(jù)直接在屏幕上輸出顯示。2.4 實驗原理1. 8251的基本性能8251是可編程的串行通信接口,可以管理信號變化范圍很大的串行數(shù)據(jù)通信。有下列基本性能:(1)通過編程,可以工作在同步方式,也可以工作在異步方式。(2)同步方式下,波特率為064K,異步方式下,波特率為019.2K。(3)在同步方式時,可以用58位

13、來代表字符,內部或外部同步,可自動插入同步字符。(4)在異步方式時,也使用58位來代表字符,自動為每個數(shù)據(jù)增加1個啟動位,并能夠根據(jù)編程為每個數(shù)據(jù)增加1個、1.5個或2個停止位。(5)具有奇偶、溢出和幀錯誤檢測能力。(6)全雙工,雙緩沖器發(fā)送和接收器。注意,8251盡管通過了RS-232規(guī)定的基本控制信號,但并沒有提供規(guī)定的全部信號。2. 8251的內部結構及外部引腳8251的內部結構圖如圖2-1所示,可以看出,8251有7個主要部分,即數(shù)據(jù)總線緩沖器、讀/寫控制邏輯電路、調制/解調控制電路、發(fā)送緩沖器、發(fā)送控制電路、接收緩沖器和接收控制電路,圖中還標識出了每個部分對外的引腳。8251的外部引

14、腳如圖2-2所示,共28個引腳,每個引腳信號的輸入輸出方式如圖中的箭頭方向所示。圖2-1 8251內部結構圖圖4.37 8251外部引腳圖3. 8251在異步方式下的TXD信號上的數(shù)據(jù)傳輸格式圖2-3 示意了8251工作在異步方式下的TXD信號上的數(shù)據(jù)傳輸格式。數(shù)據(jù)位與停止位的位數(shù)可以由編程指定。圖2-3 8251工作在異步方式下TXD信號的數(shù)據(jù)傳輸格式4. 8251的編程對8251的編程就是對8251的寄存器的操作,下面分別給出8251的幾個寄存器的格式。(1)方式控制字方式控制字用來指定通信方式及其方式下的數(shù)據(jù)格式,具體各位的定義如圖2-4所示。D7D6D5D4D3D2D1D0SCS/S2

15、ESD/S1EPPENL2L1B2B1同步/停止位奇偶校驗字符長度波特率系數(shù)同步(D1D000)X0內同步X1外同步0X雙同步1X單同步異步(D1D00)00不用011位101.5位112位X0無校驗01奇校驗11偶校驗005位016位107位118位異步00不用010110161164同步00同步方式標志圖2-4 8251方式控制字(2)命令控制字命令控制字用于指定8251進行某種操作(如發(fā)送、接收、內部復位和檢測同步字符等)或處于某種工作狀態(tài),以便接收或發(fā)送數(shù)據(jù)。圖2-5所示的是8251命令控制字各位的定義。D7D6D5D4D3D2D1D0EHIRRTSERSBRKRxEDTRTxEN進入

16、搜索1允許搜索內部復位1使8251返回方式控制字請求發(fā)送1使RTS輸出0錯誤標志復位使錯誤標志PE、OE、FE復位發(fā)中止字符1使TXD為低0正常工作接收允許1允許0禁止數(shù)據(jù)終端準備好1使DTR輸出0發(fā)送允許1允許0禁止圖2-5 8251命令控制字格式(3)狀態(tài)字CPU通過狀態(tài)字來了解8251當前的工作狀態(tài),以決定下一步的操作,8251的狀態(tài)字如圖2-6所示。D7D6D5D4D3D2D1D0DSRSYNDETFEOEPETxERxRDYTxRDY數(shù)據(jù)裝置就緒:當DSR輸入為0時,該位為1同步檢測幀錯誤:該標志僅用于異步方式,當在任一字符的結尾沒有檢測到有效的停止位時,該位置1。此標志由命令控制字

17、中的位4復位。溢出錯誤:在下一個字符變?yōu)榭捎们埃珻PU沒有把字符讀走,此標志置1。此錯誤出現(xiàn)時上一字符已丟失。奇偶錯誤:當檢測到奇偶錯誤時此位置1。發(fā)送器空接收就緒為1表明接收到一個字符。發(fā)送就緒為1表明發(fā)送緩沖器空。圖2-6 8251狀態(tài)字格式(4)系統(tǒng)初始化8251的初始化和操作流程如圖2-7所示。圖2-7 8251初始化流程圖5. 8251實驗單元電路圖圖2-8 8251實驗單元電路圖2.5 實驗步驟1. 自收自發(fā)實驗通過自收自發(fā)實驗,可以驗證硬件及軟件設計,常用于自測試。具體實驗步驟如下:(1)參考實驗接線圖如圖2-9所示,按圖連接實驗線路。(2)編寫實驗程序,編譯、鏈接無誤后裝入系統(tǒng)

18、。(3)使用E命令更改4000H起始的10個單元中的數(shù)據(jù)。(4)運行實驗程序,待程序運行停止。(5)查看3000H起始的10個單元中的數(shù)據(jù),與初始化的數(shù)據(jù)進行比較,驗證程序功能。實驗參考例程(A82512.ASM)M8251_DATAEQU 0600H;端口定義M8251_CONEQU 0602HM8254_2EQU 06C4HM8254_CONEQU 06C6HSSTACKSEGMENT STACKDW 64 DUP(")SSTACKENDSCODESEGMENTASSUME CS:CODESTART:MOV AX, 0000HMOV DS, AX;初始化8254,得到收發(fā)時鐘MO

19、V AL, 0B6HMOV DX, M8254_CONOUT DX, ALMOV AL, 0CHMOV DX, M8254_2OUT DX, ALMOV AL, 00HOUT DX, AL;復位8251CALL INITCALL DALLY;8251方式字MOV AL,7EHMOV DX, M8251_CON圖2-9 自收自發(fā)實驗接線圖OUT DX, ALCALL DALLY;8251控制字 MOV AL, 34HOUT DX, ALCALL DALLYMOV DI, 3000HMOV SI, 4000HMOV CX, 000AHA1:MOV AL, SIPUSH AXMOV AL, 37HM

20、OV DX, M8251_CONOUT DX, ALPOP AXMOV DX, M8251_DATAOUT DX, AL;發(fā)送數(shù)據(jù)MOV DX, M8251_CON A2:IN AL, DX;判斷發(fā)送緩沖是否為空AND AL, 01HJZ A2CALL DALLYA3:IN AL, DX;判斷是否接收到數(shù)據(jù)AND AL, 02HJZ A3MOV DX, M8251_DATAIN AL, DX;讀取接收到的數(shù)據(jù)MOV DI, ALINC DIINC SILOOP A1MOV AX,4C00HINT 21H;程序終止INIT:MOV AL, 00H;復位8251子程序MOV DX, M8251_C

21、ONOUT DX, ALCALL DALLYOUT DX, ALCALL DALLYOUT DX, ALCALL DALLYMOV AL, 40HOUT DX, ALRETDALLY:PUSH CXMOV CX,3000HA5:PUSH AXPOP AXLOOP A5POP CXRETCODEENDSEND START3. 雙機通訊實驗使用兩臺實驗裝置,一臺為發(fā)送機,一臺為接收機,進行兩機間的串行通訊。實驗步驟如下:圖2-10 雙機通訊實驗接線圖(1)按圖2-10連接實驗線路。(2)為兩臺機器分別編寫實驗程序,編譯、鏈接后裝入系統(tǒng)。(3)為發(fā)送機初始化發(fā)送數(shù)據(jù)。在發(fā)送機3000H3009H內存

22、單元寫入ASCII值:30,31,32,33,34,35,36,37,38,39共10個數(shù)。(4)首先運行接收機上的程序,等待接收數(shù)據(jù),然后運行發(fā)送機上的程序,將數(shù)據(jù)發(fā)送到串口。(5)觀察接收機端屏幕上的顯示是否與發(fā)送機端初始的數(shù)據(jù)相同,驗證程序功能。屏幕將會顯示字符:0123456789實驗參考例程(接收機)(A82513.ASM)M8251_DATAEQU 0600HM8251_CONEQU 0602HM8254_2EQU 06C4HM8254_CONEQU 06C6HSSTACKSEGMENT STACKDW 64 DUP(")SSTACKENDSCODESEGMENTASSU

23、ME CS:CODESTART:MOV AL, 0B6H;初始化8254MOV DX, M8254_CONOUT DX, ALMOV AL, 0CHMOV DX, M8254_2OUT DX, ALMOV AL, 00HOUT DX, ALCLICALL INIT;復位8251CALL DALLYMOV AL, 7EHMOV DX, M8251_CONOUT DX, AL CALL DALLYMOV AL, 34HOUT DX, AL CALL DALLYMOV AX, 0152H;輸出顯示字符 'R'INT 10HMOV DI, 3000HMOV CX, 000AHA1:IN

24、 AL, DXAND AL, 02HJZ A1MOV DX, M8251_DATAIN AL, DXAND AL, 7FHMOV DI,ALINC DILOOP A1MOV AL, 00HMOV SI, 300AHMOV SI, ALMOV AH, 06HMOV BX, 3000HINT 10H;輸出顯示接收到的數(shù)據(jù)STIA2:JMP A2INIT:MOV AL, 00H;復位8251子程序MOV DX, M8251_CONOUT DX, ALCALL DALLYOUT DX, ALCALL DALLYOUT DX, ALCALL DALLYMOV AL, 40HOUT DX, ALRETDA

25、LLY:PUSH CXMOV CX, 3000HA3:PUSH AXPOP AXLOOP A3POP CXRETCODEENDSEND START實驗參考程序(發(fā)送機)(A82514.ASM)M8251_DATAEQU 0600HM8251_CONEQU 0602HM8254_2EQU 06C4HM8254_CONEQU 06C6HSSTACKSEGMENT STACKDW 64 DUP(")SSTACKENDSCODESEGMENTASSUME CS:CODESTART:MOV AL, 0B6H;初始化8254, 得到收發(fā)時鐘MOV DX, M8254_CONOUT DX, ALM

26、OV AL, 0CHMOV DX, M8254_2OUT DX, ALMOV AL, 00HOUT DX, ALCALL INIT;復位8251CALL DALLYMOV AL, 7EHMOV DX, M8251_CONOUT DX, AL;8251方式字CALL DALLYMOV AL, 34HOUT DX, AL;8251控制字CALL DALLYMOV DI, 3000HMOV CX, 000AHA1:MOV AL, DICALL SENDCALL DALLYINC DILOOP A1A2:JMP A2INIT:MOV AL, 00H;復位8251子程序MOV DX, M8251_CON

27、OUT DX, ALCALL DALLYOUT DX, ALCALL DALLYOUT DX, ALCALL DALLYMOV AL, 40HOUT DX, ALRETDALLY:PUSH CXMOV CX, 3000HA4:PUSH AXPOP AXLOOP A4POP CXRETSEND:PUSH AX;數(shù)據(jù)發(fā)送子程序PUSH DXMOV AL, 31HMOV DX, M8251_CONOUT DX, ALMOV DX, M8251_DATAOUT DX, ALMOV DX, M8251_CONA3:IN AL, DXAND AL, 01HJZ A3POP DXPOP AXRETCODEE

28、NDSEND START三、8254定時/計數(shù)器應用實驗3.1 實驗目的1. 掌握8254的工作方式及應用編程。2. 掌握8254典型應用電路的接法。3.2 實驗設備PC機一臺,TD-PITE實驗裝置或TD-PITC實驗裝置一套,示波器一臺。3.3 實驗內容1. 計數(shù)應用實驗。編寫程序,應用8254的計數(shù)功能,使用單次脈沖模擬計數(shù),使每當按動KK15次后,產生一次計數(shù)中斷,并在屏幕上顯示一個字符M。2. 定時應用實驗。編寫程序,應用8254的定時功能,產生一個1ms的方波。3.4 實驗原理8254是Intel公司生產的可編程間隔定時器。是8253的改進型,比8253具有更優(yōu)良的性能。8254具

29、有以下基本功能:(1)有3個獨立的16位計數(shù)器。(2)每個計數(shù)器可按二進制或十進制(BCD)計數(shù)。(3)每個計數(shù)器可編程工作于6種不同工作方式。(4)8254每個計數(shù)器允許的最高計數(shù)頻率為10MHz(8253為2MHz)。(5)8254有讀回命令(8253沒有),除了可以讀出當前計數(shù)單元的內容外,還可以讀出狀態(tài)寄存器的內容。(6)計數(shù)脈沖可以是有規(guī)律的時鐘信號,也可以是隨機信號。計數(shù)初值公式為:n=fCLKi÷fOUTi、其中fCLKi是輸入時鐘脈沖的頻率,fOUTi是輸出波形的頻率。圖3-1是8254的內部結構框圖和引腳圖,它是由與CPU的接口、內部控制電路和三個計數(shù)器組成。825

30、4的工作方式如下述:(1)方式0:計數(shù)到0結束輸出正躍變信號方式。(2)方式1:硬件可重觸發(fā)單穩(wěn)方式。(3)方式2:頻率發(fā)生器方式。 (4)方式3:方波發(fā)生器。(5)方式4:軟件觸發(fā)選通方式。 (6)方式5:硬件觸發(fā)選通方式。圖3-1 8254的內部接口和引腳8254的控制字有兩個:一個用來設置計數(shù)器的工作方式,稱為方式控制字;另一個用來設置讀回命令,稱為讀回控制字。這兩個控制字共用一個地址,由標識位來區(qū)分??刂谱指袷饺绫?-13-3所示。表3-1 8254的方式控制字格式D7D6D5D4D3D2D1D0計數(shù)器選擇讀/寫格式選擇工作方式選擇計數(shù)碼制選擇00計數(shù)器001計數(shù)器110計數(shù)器211讀

31、出控制字標志00鎖存計數(shù)值01讀/寫低8位10讀/寫高8位11先讀/寫低8位 再讀/寫高8位000方式0001方式1010方式2011方式3100方式4101方式50二進制數(shù)1十進制數(shù)表3-2 8254讀出控制字格式D7D6D5D4D3D2D1D0110鎖存計數(shù)值0鎖存狀態(tài)信息計數(shù)器選擇(同方式控制字)0表3-3 8254狀態(tài)字格式D7D6D5D4D3D2D1D0OUT引腳現(xiàn)行狀態(tài)1高電平0低電平計數(shù)初值是否裝入1無效計數(shù)0計數(shù)有效計數(shù)器方式(同方式控制字)8254實驗單元電路圖如圖3-2所示:圖3-2 8254實驗電路原理圖3.5 實驗步驟1. 計數(shù)應用實驗編寫程序,將8254的計數(shù)器0設置

32、為方式3,計數(shù)值為十進制數(shù)4,用單次脈沖KK1作為CLK0時鐘,OUT0連接MIR7,每當KK1按動5次后產生中斷請求,在屏幕上顯示字符“M”。實驗步驟:(1)實驗接線如圖3-3所示。(2)編寫實驗程序,經(jīng)編譯、鏈接無誤后裝入系統(tǒng)。(3)運行程序,按動KK1產生單次脈沖,觀察實驗現(xiàn)象。(4)改變計數(shù)值,驗證8254的計數(shù)功能。圖3-3 8254計數(shù)應用實驗接線圖實驗程序清單(A82541.ASM)A8254 EQU 06C0HB8254 EQU 06C2HC8254 EQU 06C4HCON8254 EQU 06C6HSSTACKSEGMENT STACKDW 32 DUP(")SS

33、TACKENDSCODESEGMENTASSUME CS:CODE, SS:SSTACKSTART:PUSH DSMOV AX, 0000HMOV DS, AXMOV AX, OFFSET IRQ7;取中斷入口地址MOV SI, 003CH;中斷矢量地址MOV SI, AX;填IRQ7的偏移矢量MOV AX, CS;段地址MOV SI, 003EHMOV SI, AX;填IRQ7的段地址矢量CLIPOP DS;初始化主片8259MOV AL, 11HOUT 20H, AL;ICW1MOV AL, 08HOUT 21H, AL;ICW2MOV AL, 04HOUT 21H, AL;ICW3MOV

34、 AL, 01HOUT 21H, AL;ICW4MOV AL, 6FH;OCW1OUT 21H, AL;8254MOV DX, CON8254MOV AL, 10H;計數(shù)器0,方式0OUT DX, ALMOV DX, A8254MOV AL, 04HOUT DX, ALSTIAA1:JMP AA1IRQ7:MOV DX, A8254MOV AL, 04HOUT DX, ALMOV AX, 014DHINT 10H;顯示字符MMOV AX, 0120HINT 10HMOV AL, 20HOUT 20H, AL;中斷結束命令IRETCODEENDSEND START2. 定時應用實驗編寫程序,將8

35、254的計數(shù)器0設置為方式3,用信號源1MHz作為CLK0時鐘,OUT0為波形輸出1ms方波。實驗步驟:(1)接線圖如圖3-4所示。(2)根據(jù)實驗內容,編寫實驗程序,經(jīng)編譯、鏈接無誤后裝入系統(tǒng)。(3)運行實驗程序,用示波器測試OUT0輸出,驗證程序功能。實驗程序清單(A82542.ASM)A8254 EQU 06C0HB8254 EQU 06C2HC8254 EQU 06C4HCON8254 EQU 06C6HSSTACKSEGMENT STACKDW 32 DUP(")SSTACKENDSCODESEGMENTASSUME CS:CODESTART:MOV DX, CON8254;

36、8254MOV AL, 36H;計數(shù)器0,方式3OUT DX, ALMOV DX, A8254MOV AL, 0E8HOUT DX, ALMOV AL, 03HOUT DX, ALAA1:JMP AA1CODEENDSEND START圖3-4 8254定時應用實驗接線圖四、8259中斷控制實驗4.1 實驗目的1. 掌握8259中斷控制器的工作原理。2. 學習8259的應用編程方法。3. 掌握8259級聯(lián)方式的使用方法。4.2 實驗設備PC機一臺,TD-PITE實驗裝置或TD-PITC實驗裝置一套。4.3 實驗內容及步驟1. 中斷控制器8259簡介在Intel 386EX芯片中集成有中斷控制單

37、元(ICU),該單元包含有兩個級聯(lián)中斷控制器,一個為主控制器,一個為從控制器。該中斷控制單元就功能而言與工業(yè)上標準的82C59A是一致的,操作方法也相同。從片的INT連接到主片的IR2信號上構成兩片8259的級聯(lián)。在TD-PITE實驗系統(tǒng)中,將主控制器的IR6、IR7以及從控制器的IR1開放出來供實驗使用,主片8259的IR4供系統(tǒng)串口使用。8259的內部連接及外部管腳引出如圖4-1:圖4-1 8259內部連續(xù)及外部管腳引出圖表4-1列出了中斷控制單元的寄存器相關信息。表4-1 ICU寄存器列表寄存器口地址功能描述ICW1(主)ICW1(從)(只寫)0020H00A0H初始化命令字1:決定中斷

38、請求信號為電平觸發(fā)還是邊沿觸發(fā)。ICW2(主)ICW2(從)(只寫)0021H00A1H初始化命令字2:包含了8259的基址中斷向量號,基址中斷向量是IR0的向量號,基址加1就是IR1的向量號,依此類推。ICW3(主)(只寫)0021H初始化命令字3:用于識別從8259設備連接到主控制器的IR信號,內部的從8259連接到主8259的IR2信號上。ICW3(從)(只寫)00A1H初始化命令字3:表明內部從控制器級聯(lián)到主片的IR2信號上。ICW4(主)ICW4(從)(只寫)0021H00A1H初始化命令字4:選擇特殊全嵌套或全嵌套模式,使能中斷自動結束方式。OCW1(主)OCW1(從)(讀/寫)0

39、021H00A1H操作命令字1:中斷屏蔽操作寄存器,可屏蔽相應的中斷信號。OCW2(主)OCW2(從)(只寫)0020H00A0H操作命令字2:改變中斷優(yōu)先級和發(fā)送中斷結束命令。OCW3(主)OCW3(從)(只寫)0020H00A0H操作命令字3:使能特殊屏蔽方式,設置中斷查詢方式,允許讀出中斷請求寄存器和當前中斷服務寄存器。IRR(主)IRR(從)(只讀)0020H00A0H中斷請求:指出掛起的中斷請求。ISR(主)ISR(從)(只讀)0020H00A0H當前中斷服務:指出當前正在被服務的中斷請求。POLL(主)POLL(從)(只讀)0020H0021H00A0H00A1H查詢狀態(tài)字:表明連

40、接到8259上的設備是否需要服務,如果有中斷請求,該字表明當前優(yōu)先級最高的中斷請求。初始化命令字1寄存器(ICW1)說明見圖4-2所示。圖4-2 初始化命令字1寄存器初始化命令字2寄存器(ICW2)說明見圖4-3所示。圖4-3 初始化命令字2寄存器初始化命令字3寄存器(ICW3)說明,主片見圖4-4,從片見圖4-5。圖4-4 主片初始化命令字3寄存器圖4-5 從片初始化命令字3寄存器初始化命令字4寄存器(ICW4)說明見圖4-5。圖4-5 初始化命令字4寄存器操作命令字1寄存器(OCW1)說明見圖4-6。圖4-6 操作命令字1寄存器操作命令字2寄存器(OCW2)說明如圖4-7所示。圖4-7 操

41、作命令字2寄存器操作命令字3寄存器(OCW3)說明如圖4-8所示。圖4-8 操作命令字3寄存器查詢狀態(tài)字(POLL)說明如圖4-9所示。圖4-9 程序狀態(tài)字寄存器在對8259進行編程時,首先必須進行初始化。一般先使用CLI指令將所有的可屏蔽中斷禁止,然后寫入初始化命令字。8259有一個狀態(tài)機控制對寄存器的訪問,不正確的初始化順序會造成異常初始化。在初始化主片8259時,寫入初始化命令字的順序是:ICW1、ICW2、ICW3、然后是ICW4,初始化從片8259的順序與初始化主片8259的順序是相同的。系統(tǒng)啟動時,主片8259已被初始化,且4號中斷源(IR4)提供給與PC聯(lián)機的串口通信使用,其它中

42、斷源被屏蔽。中斷矢量地址與中斷號之間的關系如下表所示:主片中斷序號01234567功能調用08H09H0AH0BH0CH0DH0EH0FH矢量地址20H23H24H27H28H2BH2CH2FH30H33H34H37H38H3BH3CH3FH說明未開放未開放未開放未開放串口未開放可用可用從片中斷序號01234567功能調用30H31H32H33H34H35H36H37H矢量地址C0HC3HC4HC7HC8HCBHCCHCFHD0HD3HD4HD7HD8HDBHDCHDFH說明未開放可用未開放未開放未開放未開放未開放未開放2. 8259單中斷實驗實驗接線圖如圖4-10所示,單次脈沖輸出與主片82

43、59的IR7相連,每按動一次單次脈沖,產生一次外部中斷,在顯示屏上輸出一個字符“7”。圖4-10 8259單中斷實驗接線圖實驗程序清單(INT1.ASM)SSTACKSEGMENT STACKDW 32 DUP(")SSTACKENDSCODE SEGMENT ASSUME CS:CODESTART: PUSH DSMOV AX, 0000HMOV DS, AXMOV AX, OFFSET MIR7;取中斷入口地址MOV SI, 003CH;中斷矢量地址MOV SI, AX;填IRQ7的偏移矢量MOV AX, CS;段地址MOV SI, 003EHMOV SI, AX;填IRQ7的段

44、地址矢量CLIPOP DS;初始化主片8259MOV AL, 11HOUT 20H, AL;ICW1MOV AL, 08HOUT 21H, AL;ICW2MOV AL, 04HOUT 21H, AL;ICW3MOV AL, 01HOUT 21H, AL;ICW4MOV AL, 6FH;OCW1OUT 21H, ALSTIAA1:NOPJMP AA1MIR7:STICALL DELAYMOV AX, 0137HINT 10H;顯示字符7MOV AX, 0120HINT 10HMOV AL, 20HOUT 20H, AL;中斷結束命令IRETDELAY:PUSH CXMOV CX, 0F00HAA

45、0:PUSH AXPOP AXLOOP AA0POP CXRETCODEENDSEND START實驗步驟(1)按圖4.15連接實驗線路。(2)編寫實驗程序,經(jīng)編譯、鏈接無誤后裝入系統(tǒng)。(3)運行程序,重復按單次脈沖開關KK1,顯示屏會顯示字符“7”,說明響應了中斷。3. 8259級聯(lián)實驗實驗接線圖如圖4-11所示,KK1連接到主片8259的IR7上,KK2連接到從片8259的IR1上,當按一次KK1時,顯示屏上顯示字符“M7”,按一次KK2時,顯示字符“S1”。編寫程序。 圖4-11 8259級聯(lián)實驗 實驗程序清單(INTCAS1.ASM)SSTACKSEGMENT STACKDW 32 D

46、UP(")SSTACKENDSCODE SEGMENT ASSUME CS:CODESTART: PUSH DSMOV AX, 0000HMOV DS, AXMOV AX, OFFSET MIR7;取中斷入口地址MOV SI, 003CH;中斷矢量地址MOV SI, AX;填IRQ7的偏移矢量MOV AX, CS;段地址MOV SI, 003EHMOV SI, AX;填IRQ7的段地址矢量MOV AX, OFFSET SIR1MOV SI, 00C4HMOV SI, AXMOV AX, CSMOV SI, 00C6HMOV SI, AXCLIPOP DS;初始化主片8259MOV A

47、L, 11HOUT 20H, AL;ICW1MOV AL, 08HOUT 21H, AL;ICW2MOV AL, 04HOUT 21H, AL;ICW3MOV AL, 01HOUT 21H, AL;ICW4;初始化從片8259MOV AL, 11HOUT 0A0H, AL;ICW1MOV AL, 30HOUT 0A1H, AL;ICW2MOV AL, 02HOUT 0A1H, AL;ICW3MOV AL, 01HOUT 0A1H, AL;ICW4MOV AL, 0FDHOUT 0A1H,AL;OCW1 = 1111 1101MOV AL, 6BHOUT 21H, AL;主8259 OCW1ST

48、IAA1:NOPJMP AA1MIR7:CALL DELAYMOV AX, 014DHINT 10H;MMOV AX, 0137HINT 10H;顯示字符7MOV AX, 0120HINT 10HMOV AL, 20HOUT 20H, AL;中斷結束命令IRETSIR1:CALL DELAYMOV AX, 0153HINT 10H;SMOV AX, 0131HINT 10H;顯示字符1MOV AX, 0120HINT 10HMOV AL, 20HOUT 0A0H, ALOUT 20H, ALIRETDELAY:PUSH CXMOV CX, 0F00HAA0:PUSH AXPOP AXLOOP AA0POP CXRETCODEENDSEND START實驗步驟(1)按圖4.16連接實驗線路。(2)輸入程序,編譯、鏈接無誤后裝入系統(tǒng)。(3)運行程序,按動KK1或KK2,觀察實驗結果,驗證實驗程序的正確性。(4)若同時按下KK1和KK2,觀察實驗結果,解釋實驗現(xiàn)象。五、A/D轉換實驗5.1 實驗目的1. 學習理解模/數(shù)信號轉換的基本原理。2. 掌握模/數(shù)轉換芯片ADC0809的使用方法。5.2 實驗設備PC機一臺,TD-PITE實驗裝置或TD-PITC實驗裝置一套

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論