




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、微機原理與接口技術硬件實驗報告姓名:曹爽學號:2013210640班級:20132111242016年1月10日目 錄實驗一:熟悉實驗環境及IO的使用3一、實驗目的3二、實驗內容及要求3三、實驗步驟3四、程序流程圖4五、源代碼4六、思考題5七、實驗結果和心得體會6實驗二:8255A并行接口應用7一、實驗目的7二、實驗內容及要求7三、實驗步驟8四、程序流程圖9五、源代碼10六、實驗結果和心得體會14實驗三:8253計數器/定時器的應用15一、實驗目的15二、實驗內容及要求15三、8253定時器15四、電路的調試與連接16五、實驗連接圖16六、程序流程圖18七、源代碼19八、思考題21九、實驗結果
2、和心得體會21實驗一:熟悉實驗環境及IO的使用一、 實驗目的1. 通過實驗了解和熟悉實驗臺的結構、功能及使用方法。2. 通過實驗掌握直接使用Debug 的I、O命令來讀寫IO 端口。3. 學會Debug 的使用及編寫匯編程序。二、 實驗內容及要求1. 學習使用Debug命令,并用I、O命令直接對端口進行讀寫操作。2. 用匯編語言編寫跑馬燈程序。(使用EDIT編輯工具)實現功能。A. 通過讀入端口狀態(ON為低電平),選擇工作模式(燈的閃爍方式、速度等)。B. 通過輸出端口控制燈的工作狀態(低電平燈亮)。注意:電源打開時不得插拔電纜及各種器件。連接電路時一定要在斷電的情況下連接,否則可能會燒壞整
3、個實驗系統。三、 實驗步驟這里僅簡要敘述利用EDIT工具編寫匯編寫跑馬燈程序的步驟。編寫:CEDIT 文件名.asm編譯:CMASM 文件名.asm連接:CLINK 文件名.obj運行:C文件名.exe或用Debug進行調試。四、 程序流程圖圖1.4.1 程序流程圖五、 源代碼CODE SEGMENTASSUME CS:CODESTART: MOV AH,0FEH;將初始燈設為右起第1燈亮LOOP0: MOV DX,0EEE0H;將I/O端口地址設為EEE0IN AL,DX;從端口讀入數據,提取撥碼開關右起第3位狀態AND AL,20HCMP AL,20HJNZ STOP;若狀態為0,則保持位
4、置不變,暫停IN AL,DX;提取撥碼開關右起第2位狀態AND AL,40HCMP AL,40HJNZ FAN;若狀態為0,則右移亮燈位置ROL AH,1;左移亮燈位置STOP: JMP DISPFAN: ROR AH,1DISP: MOV AL,AHOUT DX,AL;輸出到端口,亮燈MOV CX,8000H;外循環次數MOV BX,8000H;內循環次數LOOP1: DEC BX JNZ LOOP1;內循環,BX減少到0 MOV BH,80H;重設內循環次數80H次IN AL,DXAND AL,10H CMP AL,10H;提取撥碼開關右起第4位狀態 JNZ S;若為1,則設置內循環次數為
5、10H次MOV BH,10H S: LOOP LOOP1;外循環,CX減少到0IN AL,DXAND AL,80HCMP AL,80H;提取撥碼開關右起第1位狀態JNZ LOOP0;若為0,則繼續顯示,否則結束程序MOV AH,4CHINT 21HCODE ENDSEND START六、 思考題通過實驗說明用debug中的a命令錄入實驗中給出的小程序中,有些語句可以不寫出“h”字符的原因。答:主要是出于數據辨認的角度。凡是十六進制數據都是要加H的,而地址則不用。這是由于編譯時所能識別的數據有很多種,為了保證編譯正常進行,必須要告訴編譯器數據的類型。地址只有默認的16進制形式,不需指定類型就能完
6、成正確的編譯,所以無須加H。而在DEBUG環境下,它的默認數據格式就是十六進制的,所以就不需要寫出“H”字符;否則通不過編譯。七、 實驗結果和心得體會這次實驗是我們第一次微原硬件實驗,之前的一次軟件實驗讓我們熟悉了DOS界面下的操作,由于間隔時間較長,這次我們又重新熟悉了一遍。并且,與軟件實驗不同,硬件實驗是通過編程的方式作用于硬件實驗板上,為此,我們首先熟悉了一下實驗板,編寫了一些簡單的小程序控制實驗板。在熟悉了I/O端口之后,我們開始編寫跑馬燈程序。并且能夠通過撥碼開關的選擇,控制工作模式、速度、反向、暫停等功能。這次實驗的要點是對I/O接口譯碼電路的理解以及使用,我們通過測試,理解了地址
7、與端口的對應情況,進而才能編寫出跑馬燈程序。通過本次實驗,我們掌握了地址譯碼電路的設計方法和實現原理,加深了對硬件的I/O接口技術的理解。實驗中出現的一些問題,也成為我們調試程序的寶貴經驗,為后續的實驗打下了基礎。實驗二:8255A并行接口應用一、 實驗目的1. 掌握8255A的功能及方式0、1的實現。2. 熟悉8255A與CPU的接口,以及傳輸數據的工作原理及編程方法。3. 了解七段數碼管顯示數字的原理。4. 掌握同時顯示多位數字的技術。二、 實驗內容及要求在實驗一的基礎上學習PIO芯片(8255)編程應用,熟悉平臺的主要內容。CS用Y0(EE00H)。(一)簡要說明:在方式0(輸入/輸出)
8、下,以A口為輸出口,B口為輸出口,A口接六個共陰極數碼管的八位段碼,高電平點亮數碼管的某一段,B口接數碼管的位選(即要使哪個數碼管亮),高電平選中某一位數碼管點亮。8255A中A 端口地址 E800H B 端口地址 E801H C 端口地址 E802H 控制地址 E803H 八段數碼管的顯示規律及數碼管的位選規律自己查找,可用實驗一中,學過的I、O令來做。(二)6位數碼管靜態顯示在數碼管電路上靜態地顯示6位學號,當主機鍵盤按下任意鍵時,停止顯示,返回提示:該電路6個數碼管的同名陽極段已經復接,當段選寄存器寄存了一個字型之后,6個數碼管都有可能顯示出相同的數字。如果要使6 個數碼管“同時”顯示不
9、同字,必須采用掃描顯示的方法,通過選位寄存器選擇某一位數碼管,顯示其數字(對應為1),然后關閉此數碼管,再選擇下一位數碼管進行顯示;如果在一秒鐘內,每一位管都能顯示30次以上,則人眼看到的是幾位數碼管同時在顯示。 實驗證明,在掃描顯示過程中,每一位顯示延遲1ms是最佳選擇。 (三)6位數碼管動態顯示要求在數碼管電路16位數碼管上按圖2.2.1所示的規律,動態顯示字符串HELLO,當主機鍵盤按下任意鍵時結束。圖2.2.1 字符串動態顯示示意圖提示:本實驗應在上面實驗的基礎上完成。在數據段,按下列規律設置12個字型碼:MESG DB 0,0,0,0,0,0,3DH,0DCH,8CH,8CH,0ED
10、H,0POINT DW MESG POINT單元存放MESG單元的有效地址,程序取出POINT單元的內容BX,然后用BX地址取數送數碼管電路,掃描顯示6個字符。每過0.5s將POINT單元的內容加1,再將POINT單元的內容BX,。POINT 單元內容加1,使字符串顯示的首地址向高地址移動一個單元,從而使6位字符串向“左”移動一位,實現動態顯示。動態顯示的速度可控制(快或慢),利用實驗一讀入端口的功能。三、 實驗步驟編寫和調試步驟同實驗一,不再贅述。四、 程序流程圖圖2.4.1 數碼管靜態顯示程序流程圖圖2.4.1 數碼管動態顯示程序流程圖五、 源代碼6位數碼管靜態顯示:DATA SEGMEN
11、T SHOW DB 0F4H,21H,0EDH,0DDH,39H,0DDH;210646COUNT EQU $-SHOW SL DB ? DATA ENDSCODE SEGMENT ASSUME CS:CODE, DS:DATASTART: MOV AX,DATA;seg dataMOV DS,AX NEXT: MOV CX,COUNT;顯示個數,為6LEA BX,SHOW;MOV BX,OFFSET SHOWMOV SL,01H;第一個點亮位置MOV AL,80H MOV DX,0EE03H;設置輸出端口OUT DX,AL;設置標志位為1,A、B口為輸出AGAIN: MOV AL,SLMOV
12、 DX,0EE01H;B口輸出數碼管選通位置 OUT DX,ALMOV AL,BXMOV DX,0EE00H;A口輸出數據段數據到數碼管 OUT DX,ALMOV AL,00HMOV DX,0EE00HOUT DX,AL;清除顯示,防止程序結束殘留顯示INC BX;顯示下一個數字SHL SL,1;Sl左移依次向左選通數碼管LOOP AGAIN;循環此過程COUNT次MOV AH,0BHINT 21H;若鍵盤有輸入則跳出程序OR AL,ALJZ NEXTMOV AH,4CHINT 21HCODE ENDSEND START6位數碼管動態顯示:DATA SEGMENTMESG DB 0,0,0,0
13、,0,0,3DH,0DCH,8CH,8CH,0EDH,0 DATA ENDS STACK SEGMENT STACK STACK DB 100 DUP(0)STACK ENDS CODE SEGMENTASSUME DS:DATA,CS:CODE,SS:STACK MAIN PROC FARMOV AX,DATAMOV DS,AXMOV ES,AXMOV AL,80HMOV DX,0E803H;設置標志位為1,A、B口為輸出OUT DX,AL START: MOV BX,OFFSET MESGMOV CX,07H LOP7:MOV DX,0EEE0H;從撥碼開關左起3位讀入數據到DX IN A
14、L,DXINC AL AND AL,07H XOR AH,AHMOV DX,AX;DX為外循環次數,控制靜態顯示時間LOOP0: CALL DISPDEC DXJNZ LOOP0;顯示當前狀態直至DX=0INC BX;BX決定顯示哪6個數據LOOP LOP7;重新讀取撥碼開關到DXJMP START;當7種狀態都結束后重新開始MAIN ENDPDISP PROC NEAR PUSH CX PUSH DXPUSH AXMOV BP,0044H;控制一次外循環顯示時間LOPX:XOR SI,SIMOV CX,06HMOV DX,0EE00H;設置端口為A口MOV AH,01H;第一次選通最右數碼管
15、LOP6:MOV AL,MESGBX+SIOUT DX,AL;顯示數據到數碼管MOV AL,AH MOV DX,0EE01H;設置端口為B口OUT DX,AL;選通數碼管MOV DX,0EE00H;重新設置端口為A口ROL AH,1;選擇下一個數碼管INC SI;選擇下一個數據CALL DELAYCALL KEY;檢驗按鍵是否有輸入LOOP LOP6 DEC BPJNZ LOPX;循環,保持靜態顯示POP AXPOP DXPOP CXRET DISP ENDPKEY PROC NEAR;檢測鍵盤輸入PUSH AXMOV AH,0BHINT 21HOR AL,ALJZ GOON;沒有鍵盤輸入則繼
16、續顯示MOV DX,0EE00H;有任意輸入則清空顯示,跳出程序MOV AL,0HOUT DX,ALMOV AH,4CH INT 21HGOON:POP AX RETKEY ENDP DELAY PROC PUSH AXPUSH CXMOV AX,0002H;外層循環LOPD: MOV CX,0HLOOP $;內層循環DEC AXJNZ LOPDPOP CXPOP AXRETDELAY ENDP CODE ENDSEND MAIN六、 實驗結果和心得體會這次實驗是利用8255芯片進行并口接口的應用。由于數碼管一次只能顯示一個,所以我們采用掃描顯示的方法,把間隔時間調短,使人眼感覺好像所有數碼管
17、同時顯示一樣。我們首先利用位選控制哪個數碼管亮,之后通過段選哪個數碼管顯示什么。并且設置數碼管靜態顯示出學號后六位“210646”。隨后的動態顯示也是一樣,通過首地址移動,使6位字符串向“左”移動一位,實現動態顯示出“HELLO”。我覺得這次實驗最重要的是實現靜態顯示和動態顯示的一種思想掃描的思想通過快速掃描可以讓人產生所有數碼管同時顯示的感覺。并且,本次實驗的編程難度也有所提高,對于我們起到了一定的鍛煉作用。實驗三:8253計數器/定時器的應用一、 實驗目的學習掌握8253用作定時器的編程原理。二、 實驗內容及要求完成一個音樂發生器,通過蜂鳴器放出音樂,并在數碼管上顯示樂譜。音符頻率對照音符
18、12345671頻率(Hz)256288320341384426 .6480512三、 8253定時器I8253和I8254都是可編程計數器,它們的引腳兼容,功能與使用方法相同。I8254是I8253的改進型。1. 微機系統定時器和實驗箱定時器(1)微機系統使用的8254,其3個通道均有固定的用途:0號計數器為系統時鐘源,每隔55ms向系統主8259IR0提一次中斷請求;1號計數器用于動態存儲器的定時刷新控制;2號計數器為系統的發聲源。用戶在使用微機系統的時候,可以使用0號和2號計數器,但不能改變對1號計數器的初始化。(2)實驗箱上的8253,其數據線D7D0,地址線A1、A0和控制線RD、W
19、R通過總線驅動卡和微機系統的三總線相連。除此之外,三個計數器的引出段和片選端都是懸空的,這意味著實驗箱上的8253的三個計數器都歸用戶使用,你可以單獨使用其中的一個計數器,也可以串聯使用其中的2個或3個計數器。(3)8253計數器的輸入信號,其頻率不能超過2MHz,否則長時間使用,芯片過熱,容易燒毀。2. 8253初始化使用8253前,要進行初始化編程。初始化編程的步驟是: 向控制寄存器端口寫入控制字對使用的計數器規定其使用方式等。 向使用的計數器端口寫入計數初值。3. 8253控制字D7D600:使用0號計數器,D7D601:使用1號計數器D7D610:使用2號計數器,D7D611:無效D5
20、D400:鎖存當前計數值D5D401:只寫低8位(高8位為0),讀出時只讀低8位D5D410:只寫高8位(低8位為0),讀出時只讀高8位D5D411:先讀/寫低8位,后讀/寫高8位計數值D3D2D1000:選擇方式0,D3D2D1001:選擇方式1D3D2D1X10:選擇方式2,D3D2D1X11:選擇方式3D3D2D1100:選擇方式4,D3D2D1101:選擇方式5D00:計數初值為二進制,D01:計數初值為BCD碼數四、 電路的調試與連接測試:在Debug狀態下,用“O”命令測試8353的發生功能,3組通道工作是否正常。電路連接:8253的CS接譯碼器輸出Y1其地址為EE20-EE27H
21、8253的OUT接蜂鳴器的BELL端8253的門控信號GATE接+5V8253的CLK端接Q7(32KHz)清零復位電路中的T/C端接地(或接RESET端)注意:由于8253計數速率應小于2MHz,CLK0的輸入信號必須由8MHz經393分頻到小于2MHz后使用。393分頻之后,Q0輸出為4MHz,Q1輸出為2MHzQ7輸出32KHz。編程提示:1. 8253控制端口地址為EE23H 定時器0地址為EE20H 定時器1地址為EE21H 定時器2地址為EE22H 2. 定時器可工作在方式3下。五、 實驗連接圖8253定時器連接如圖3.5.1所示,蜂鳴器電路、時鐘預分頻電路連接如圖3.5.2和3.
22、5.3所示。圖3.5.1 8253定時器連接圖圖3.5.2 蜂鳴器電路圖3.5.3 時鐘預分頻電路六、 程序流程圖圖3.6.1 程序流程圖七、 源代碼DATA SEGMENT;數據段SONG DB 7DH,7DH,53H,53H,4BH,4BH,53HDB 5EH,5EH,64H,64H,6FH,6FH,7DHDB 53H,53H,5EH,5EH,64H,64H,6FHDB 53H,53H,5EH,5EH,64H,64H,6FHDB 7DH,7DH,53H,53H,4BH,4BH,53HDB 5EH,5EH,64H,64H,6FH,6FH,7DH;音樂音符CONT EQU $-SONGNUM
23、DB 21H,21H,0D9H,0D9H,0DDH,0DDH,0D9HDB 39H,39H,0F1H,0F1H,0F4H,0F4H,21HDB 0D9H,0D9H,39H,39H,0F1H,0F1H,0F4HDB 0D9H,0D9H,39H,39H,0F1H,0F1H,0F4HDB 21H,21H,0D9H,0D9H,0DDH,0DDH,0D9HDB 39H,39H,0F1H,0F1H,0F4H,0F4H,21H;數碼管字符DATA ENDSSTACK SEGMENTDB 100 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STA
24、CKSTART: MOV AX,DATAMOV DS,AXMOV SI,OFFSET SONG;SI存儲音樂音符MOV DI,OFFSET NUM;DI存儲數碼管字符MOV CX,CONTLOOP1: CMP BX,0JNZ CONTNMOV BX,07HCONTN: MOV DX,0EE23H;8253控制字MOV AL,16H;0號計數器,只讀寫低8位,工作方式3,2進制OUT DX,ALMOV DX,0EE20HMOV AL,SIOUT DX,AL;蜂鳴器響MOV DX,0EE03H;8255控制字MOV AL,10001001B;方式3工作OUT DX,ALMOV DX,0EE01H;數碼管位選MOV AL,01HOUT DX,ALMOV DX,0EE00H;數碼管顯示MOV AL,DIOUT DX,AL;數碼管顯示音符CALL DELAYDEC BXJNZ NEXTCALL DELAY;延時控制節奏NEXT: INC DIIN
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 動態語言與靜態語言的比較試題及答案
- 2025年軟件設計師考試綜合復習試題及答案
- 開放數據政策對軟件開發的影響測試試題及答案
- 經濟危機后復蘇的政策選擇與經濟影響試題及答案
- 2025年公司戰略成效分析試題及答案
- 行政法學專業發展的關鍵試題及答案
- 行政法學理解與應用試題及答案
- 計算機軟件考試階段性復習計劃試題及答案
- 2025加盟協議合同范本
- IT安全審計的流程與核心要素試題及答案
- 《嬰幼兒健康管理》課件-任務四 嬰幼兒健康檔案建設與管理
- 【出口退稅管理探究的國內外探究綜述4300字】
- 2024版小學語文新課程標準
- 水文地質技術員技能鑒定理論考試題庫-上(單選題)
- 2024年保密教育線上培訓考試
- 服飾搭配藝術(山東聯盟)智慧樹知到期末考試答案章節答案2024年德州學院
- 船舶避碰 第十七條直航船的行動
- 綠色礦山造林施工合同
- 中國絕經管理與絕經激素治療指南(2023版)解讀
- 開休閑書吧創業計劃書
- 人體常見病智慧樹知到期末考試答案章節答案2024年
評論
0/150
提交評論