版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、.計算機硬件技術課程設計實踐報告 學院: 自動化工程學院 班級: 2010032班 姓名: 劉慧彬 學號: 20101503 2013年1月;一、設計題目:硬件類題目(11)2人一組:計數(shù)器實驗(連線查看實驗十九)。本次實驗的主要內(nèi)容是:本系統(tǒng)中已設計有一片8259A中斷控制芯片,工作于主片方式,8個中斷請求輸入端IR0IR7對應的中斷號為8F。根據(jù)實驗原理圖,8259A和8088系統(tǒng)總線直接相連,8259A 上連有一系統(tǒng)地址線A0,故8259A 有2 個端口地址, 本系統(tǒng)中為20H、21H。 20H 用來寫ICW1, 21H 用來寫ICW2、ICW3、ICW4,初始化命令字寫好后, 再寫操作
2、命令字。OCW2、OCW3 用口地址20H,OCW1用口地址21H。使用了3號中斷源,IRQ3插孔和SP插孔相連,中斷方式為邊沿觸發(fā)方式,每按一次AN按鈕產(chǎn)生一次中斷信號,向8259A發(fā)出中斷請求信號。如果中斷源電平信號不符合規(guī)定要求則自動轉到7號中斷,顯示"Err"。CPU響應中斷后,在中斷服務程序中,對中斷次數(shù)進行計數(shù)并顯示,計數(shù)值按八位十進制循環(huán)顯示。二、實驗目的:通過本項課程設計,對計算機硬件技術課程中涉及的芯片結構、控制原理、硬件編程等方面有一定的感性認識和實踐操作能力,更好的理解計算機硬件技術課程中講述的基本原理和概念。1.掌握8259A中斷控制器的接口方法。2
3、.掌握8259A中斷控制器的應用編程。三、實驗設計方案以及論證:1.8259的內(nèi)部結構:根據(jù)設計要求,要實現(xiàn)一個全功能的8259A中斷控制器,其控制邏輯部分非常復雜。8259A的內(nèi)部結構由8個部分組成:數(shù)據(jù)總線緩沖器,讀/寫控制邏輯電路,級聯(lián)緩沖器/比較器,中斷請求寄存器IRR,中斷屏蔽寄存器IMR,中斷服務寄存器ISR,優(yōu)先權電路PR。8259的內(nèi)部結構圖如圖1所示。 圖1 8259A邏輯內(nèi)部框圖數(shù)據(jù)總線緩沖器:是雙向三態(tài)的,用以連接系統(tǒng)總線和8259A內(nèi)部總線, 通過它可以由CPU對8259A寫入狀態(tài)字和控制字。讀寫控制邏輯電路:用來接受I/O命令,對初始化命令和操作命令字寄存器進行寫入,
4、以確定8259A的工作方式和控制方式。級聯(lián)緩沖器/比較器:用于多片8259A的連接,能構成多達64級的矢量中斷系統(tǒng)。中斷請求寄存器IRR:寄存所有要求服務的請求IR0IR7。中斷屏蔽寄存器IMR:存放被屏蔽的中斷請求,該寄存器的每一位表示一個中斷號, 該位為1,屏蔽該號中斷,否則開放該號中斷。中斷服務寄存器ISR:寄存正在被服務的中斷請求。優(yōu)先權電路PR:邏輯部件根據(jù)IRR中置“1”的各位的優(yōu)先級,選出其中優(yōu)先級最高的位,如果其優(yōu)先級比正在中斷服務的中斷優(yōu)先級高,則將此中斷送往CPU,并在脈沖到來時選通對應位送入ISR寄存器。2.8259A的編程及初始化:(1) 寫初始化命令字:1)寫初始化命
5、令字ICW1(控制初始化命令字,寫入偶地址),以確定中斷請求信號類型,清除中斷屏蔽寄存器,中斷優(yōu)先級排隊和確定系統(tǒng)用單片還是多片。中斷優(yōu)先級排隊和確定系統(tǒng)用單片還是多片。2)寫初始化命令字ICW2(設置中斷類型號,寫入奇地址),以定義中斷向量的高五位類型碼。ICW2 的高5 位確定中斷類型碼的高5位,低3位的值取決于引入中斷的引腿序號,與IR0IR7 相對應。3)寫初始化命令字ICW3(用于主、從級聯(lián)的命令字,寫入奇地址),以定義主片8259A中斷請求線上IR0IR7有無級聯(lián)的8259A片。 指定級聯(lián)方式下的主片哪個中斷請求輸入引腳接有從片;或指定從片的INT 輸出接主片的哪個中斷請求輸入引腳
6、。4)寫初始化命令ICW4(方式控制初始化命令字,寫奇地址),用來定義8259A工作時用8085模式,還是8088模式,以及中斷服務寄存器復位方式等。(2) 寫控制命令字:1)寫操作命令字0CW1(設置/取消中斷屏蔽,寫奇地址),用來設置或清除對中斷源的屏蔽。當OCW1中某一位為1時,對應的中斷請求IRi受到屏蔽。2) 操作命令字OCW2(設置優(yōu)先級循環(huán)方式和中斷結束方式),設置優(yōu)先級是否進行循環(huán)、循環(huán)方式及中斷結束方式。3) 操作命令字OCW3(設置特殊屏蔽方式;設置中斷查詢方式;讀8259A內(nèi)部寄存器)。3.實驗操作:(1)硬件連線:單級中斷區(qū)8259A的IRQ3插孔和SP插孔相連。SP插
7、孔初始電平為低電平。(2)軟件操作:1)雙擊桌面dv88.exe,在實驗系統(tǒng)實驗選擇框內(nèi)可以選擇不同的實驗項目,本次實驗是計數(shù)器的實驗,所以選擇計數(shù)器,在框的右邊可以查看實驗的目的、內(nèi)容、原理和位置等,了解實驗的所有知識。2)單擊新建,出現(xiàn)程序編輯界面,編輯本次實驗的程序并保存,保存路徑為C:/DVCC,保存的文件名為英文或數(shù)字,不可以包含中文。3)然后按鍵盤顯示控制模塊白色鍵盤區(qū)的右上角的復位鍵“Reset”,位于鍵盤區(qū)上面的數(shù)碼管顯示“dvcc-86H”。4)單擊聯(lián)接、編譯、調試,如果編譯的過程中沒有出現(xiàn)錯誤或警告,則繼續(xù)進行下一步,否則找出錯誤并改正,直到不出現(xiàn)錯誤。5)在沒錯誤和警告的
8、前提下,單擊運行,并進行相關操作,查看實驗結果。6)長按PC鍵盤ESC鍵3秒鐘,實驗箱上按鍵盤顯示控制區(qū)的復位鍵Reset,直到數(shù)碼管顯示“dvcc-86H”,退出運行。 最后經(jīng)過我們的實踐,完成了對8259計數(shù)器的論證。四、硬件原理圖: 圖2 硬件原理圖五、程序流程圖: 圖3 主程序流程圖 圖4 8259控制器流程圖六、程序清單: CODE SEGMENTASSUME CS:CODEINTPORT1 EQU 0020H ;8259A端口地址INTPORT2 EQU 0021H INTQ3 EQU INTERUPT3 ;IRQ3服務程序INTQ7 EQU INTERUPT7 ;IRQ7服務程序
9、CONTPORT EQU 00DFH ;8255A控制口DATAPORT EQU 00DEH ;數(shù)據(jù)口DATA0 EQU 0580HDATA1 EQU 0500HDATA2 EQU 0508HDATA3 EQU 0518H ;指向顯示8255-1顯示模區(qū)DATA4 EQU 0520HDATA5 EQU 0521H ORG 1800HSTART: JMP TINT1 TINT1: CALL FORMAT ;Format為顯示模型庫 CLD ;清除方向標志 MOV DI,DATA0 ;0580H058FH清零 MOV CX,08H XOR AX,AX ;AX清0 REP STOSW ;AX=0存到
10、ES:DI中 MOV SI,DATA3 ;建立顯示8259基地址 CALL LEDDISP MOV AX,0H ;數(shù)據(jù)段初始化 MOV DS,AX CALL WRINTVER MOV AL,13H ;00010011B MOV DX,INTPORT1 OUT DX,AL ;設置控制字ICW1(20H) MOV AL,08H ;00001000B MOV DX,INTPORT2 OUT DX,AL ;設置控制字ICW2(21H) MOV AL,09H ;00001001B OUT DX,AL ;設置控制字ICW4(21H) MOV AL,0F7H ;11110111B OUT DX,AL ;設置
11、操作數(shù)OCW1(21H)(開放IRQ3) STI ;開中斷WATING: JMP WATING ;等待中斷WRINTVER: MOV AX,0H ;中斷主程序設置,用指令設置中斷服 MOV ES,AX ;務程序的入口地址寫到中斷類型號n MOV DI,002CH ;所對應的中斷向量表中 LEA AX,INTQ3 STOSW MOV AX,CS ;設置中斷端口3的地址 STOSW MOV DI,003CH LEA AX,INTQ7 STOSW MOV AX,CS ;設置中斷端口7的地址 STOSW RETINTERUPT3: CLI ;關中斷,防止其他中斷的干擾 CALL CONVERS ;IN
12、TQ3端口對中斷次數(shù)進行計數(shù) MOV SI,DATA0 CALL LEDDISP MOV AL,20H MOV DX,INTPORT1 OUT DX,AL ;寫入OCW2的控制命令字 MOV SI,DATA5BITADD: ADD BYTE PTR SI,01H;設置顯示屏幕上所能表示的數(shù)值,由 CMP BYTE PTR SI,09H;于題目要求的是顯示十進制數(shù),則應 JNA BIT ;在顯示屏幕上顯示0-9的十進制數(shù) MOV BYTE PTR SI,0H ;JNA即結果為小于等于 INC SI ;若需要輸出的大于9,即為AF時, JMP BITADD ;轉化為10進制BIT: MOV AL,
13、20H MOV DX,INTPORT1 ;將所要顯示的十進制數(shù)顯示的從 OUT DX,AL ;INTQ3端口中輸出。 STI IRETCONVERS: MOV BX,DATA0 ;將中斷的次數(shù)通過CS段中的BX+SI MOV SI,DATA5 ;的偏移量傳遞給LEDDISP,使得中 MOV CX,8 ;次數(shù)能夠顯示在屏幕上CONVERS1: PUSH BX MOV BH,0 MOV BL,BYTE PTR SI MOV AL,CS:BX+DATA2 POP BX MOV DS:BX,AL INC BX INC SI LOOP CONVERS1 RETINTERUPT7: CLI ;當中斷指令出
14、現(xiàn)異常指令時,在屏 MOV SI,DATA1 ;上要顯示Err。設置當出現(xiàn)異常指令 CALL LEDDISP ;時輸出為Err。 MOV AL,20H MOV DX,INTPORT1 OUT DX,AL STI IRET ;中斷返回LEDDISP: MOV AL,90H ;對8279顯示器進行初始化。 MOV DX,CONTPORT OUT DX,AL MOV BYTE PTR DS:DATA4,00HLED1: CMP BYTE PTR DS:DATA4,07H ;共顯示8位 JA LED2 ;位數(shù)高于8位 MOV BL,DS:DATA4 ;將前面通過CS傳遞過來的AN中斷次 MOV BH,
15、0H ;輸出并顯示在屏幕上。 MOV AL,CS:BX+SI ;取顯示段 MOV DX,DATAPORT ;輸出 OUT DX,AL ADD BYTE PTR DS:DATA4,01H JNZ LED1 LED2:RET ;結果大于8位跳轉到LED2,即中斷返回FORMAT: MOV BX,0 ;建立顯示的數(shù)據(jù)段 MOV WORD PTR DS:BX+DATA1,5050H ;rr字型碼 ADD BX,2 MOV WORD PTR DS:BX+DATA1,0079H ;0E字型碼 ADD BX,2 MOV WORD PTR DS:BX+DATA1,0000H ADD BX,2 MOV WORD
16、 PTR DS:BX+DATA1,0000H ADD BX,2 MOV WORD PTR DS:BX+DATA1,063FH ;0 1 ADD BX,2 MOV WORD PTR DS:BX+DATA1,4F5BH ;2 3 ADD BX,2 MOV WORD PTR DS:BX+DATA1,6D66H ;4 5 ADD BX,2 MOV WORD PTR DS:BX+DATA1,077DH ;6 7 ADD BX,2 MOV WORD PTR DS:BX+DATA1,6F7FH ;8 9 ADD BX,2 MOV WORD PTR DS:BX+DATA1,7C77H ;A b ADD BX,
17、2 MOV WORD PTR DS:BX+DATA1,5E39H ;C d ADD BX,2 MOV WORD PTR DS:BX+DATA1,7179H ;E f ADD BX,2 MOV WORD PTR DS:BX+DATA1,4006H ;1 - ADD BX,2 MOV WORD PTR DS:BX+DATA1,4040H ;- - ADD BX,2 MOV WORD PTR DS:BX+DATA1,6D6FH ;5 9 ADD BX,2 MOV WORD PTR DS:BX+DATA1,7F5BH ;8 2 ADD BX,2 MOV WORD PTR DS:BX+DATA1,3F5
18、EH ;O D ADD BX,2 MOV WORD PTR DS:BX+DATA1,5C3FH ;O o ADD BX,2 MOV WORD PTR DS:BX+DATA1,6D6FH ;5 9 ADD BX,2 MOV WORD PTR DS:BX+DATA1,7F5BH ;8 2 MOV BX,0 MOV BYTE PTR DS:BX+DATA5,1H ;對顯示十進制數(shù)的高4 INC BX ;位清零。 MOV BYTE PTR DS:BX+DATA5,0H INC BX MOV BYTE PTR DS:BX+DATA5,0H INC BX MOV BYTE PTR DS:BX+DATA5,0H INC BX MOV BYTE PTR DS:BX+DATA5,0H INC BX MOV BYTE PTR DS:BX+DATA5,0H INC BX MOV BYTE PTR DS:BX+DATA5,0H INC BX MOV BYTE PTR DS:BX+DATA5,0H RETCODE ENDSEND STAR
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 八下期末考拔高測試卷(4)(解析版)
- 2010年高考語文試卷(湖南)(空白卷)
- 纖維素纖維產(chǎn)業(yè)國際合作-洞察分析
- 水文模擬與預測模型-洞察分析
- 《社會心理學簡介》課件
- 心血管疾病中醫(yī)證型研究-洞察分析
- 銅壓延能耗分析-洞察分析
- 細胞液藥物靶點-洞察分析
- 水資源高效利用路徑-洞察分析
- 探究資源分配算法-洞察分析
- 湖南2025年湖南機電職業(yè)技術學院合同制教師招聘31人歷年參考題庫(頻考版)含答案解析
- 黑龍江省哈爾濱市第六中學2025屆高考數(shù)學三模試卷含解析
- 【MOOC】數(shù)字邏輯設計及應用-電子科技大學 中國大學慕課MOOC答案
- 傷口治療師進修匯報
- 研學活動協(xié)議書合同范本
- ISBAR輔助工具在交班中應用
- GB 30254-2024高壓三相籠型異步電動機能效限定值及能效等級
- 喚醒孩子內(nèi)驅力家校共育家庭教育PPT課件(帶內(nèi)容)
- 合成氣精脫硫催化劑的研究報告
- 滾裝客船貨物的積載綁扎系固分解課件
- 中控樓裝飾裝修方案
評論
0/150
提交評論