資源描述:
《8259a中斷實驗報告》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、實驗十一8259A中斷實驗一、實驗目的1、學習8086/8088與8259A的連接與控制方法,掌握其工作原理。2、完成程序設計題,學會編寫中斷服務程序。二、實驗原理8259A是一種可編程序中斷控制器,與8088/86微機兼容,能處理8級向量優(yōu)先權(quán)中斷,亦可以通過級聯(lián)構(gòu)成64級向量優(yōu)先權(quán)中斷系統(tǒng)。具有可編程控制中斷方式,并能分別屏蔽各個中斷請求。通過4個初始化命令字(ICW1——ICW4)及3個操作命令字(OCW1——OCW3)使用8259A可編程序中斷控制器。三、實驗內(nèi)容用8066/86控制8259可編程中斷控制器,實現(xiàn)對外部中斷的響應和處理。要求程序
2、中對每次中斷進行計數(shù),并將計數(shù)結(jié)果用8255的PA口輸出到LED顯示。四、實驗方法與步驟(1)根據(jù)要求編寫程序modeequ82hpa8255equ8000hctl8255equ8003hicw1equ00010011bicw2equ00100000bicw4equ00000001bocw1equ11111110bcs8259aequ09000hcs8259bequ09001hdatasegmentcntdb0dataendscodesegmentassumecs:code,ds:dataienterprocnearpushaxpushdxmovdx,
3、pa8255inccntmoval,cntoutdx,almovdx,cs9259amoval,20houtdx,alpopdxpopaxiretienterendpiinitprocnearmovdx,cs8259amoval,icw1outdx,almovdx,cs8259bmoval,icw2outdx,almoval,icw4outdx,almoval,ocw1outdx,alretiinitendpstartprocnearmovdx,ctl8255moval,modeoutdx,alclimovax,0movds,axmovbx,4*icw
4、2movax,codeshlax,4addax,offsetientermov[bx],axmovax,0incbxincbxmov[bx],axcalliinitmovax,datamovds,axmovcnt,0moval,cntmovdx,pa8255outdx,alstilp:nopjmplpstartendpcodeendsendstart(2)根據(jù)電路連線。(3)將程序下載到電路,觀察情況。五、實驗結(jié)果與數(shù)據(jù)處理每按下一次按鍵,燈就會亮。并且按照0,1,2……的順序亮。六、感想該實驗使我們熟悉了8259A中斷的工作方式和初始化命令字ICW及
5、操作命令字OCW的作用,學習并掌握了8088/8086與8259A的連接與控制方法。實驗中,總會遇上電腦與硬件總是連不上的情況,我們聽從老師的建議,將程序和實驗箱都關(guān)閉再重新啟動或者是換一個電源,這才能夠連上。七、實驗方法與步驟程序設計:修改上述程序,使沒中斷10次計數(shù)器加1,并將計數(shù)結(jié)果從8255的PB口輸出到LED顯示。完成電路設計及程序的編制,進行調(diào)試并驗證結(jié)果。(1)根據(jù)要求編寫程序modeequ82hpa8255equ8000hctl8255equ8003hicw1equ00010011bicw2equ00100000bicw4equ0000
6、0001bocw1equ11111110bcs8259aequ09000hcs8259bequ09001hdatasegmentcntdb0bntdb0dataendscodesegmentassumecs:code,ds:dataienterprocnearpushaxpushdxmovdx,pa8255inccntcmpcnt,0ahjbjieshuincbntmoval,bntmovcnt,0outdx,aljieshu:movdx,cs8259amoval,20houtdx,alpopdxpopaxiretienterendpiinitproc
7、nearmovdx,cs8259amoval,icw1outdx,almovdx,cs8259bmoval,icw2outdx,almoval,icw4outdx,almoval,ocw1outdx,alretiinitendpstartprocnearmovdx,ctl8255moval,modeoutdx,alclimovax,0movds,axmovbx,4*icw2movax,codeshlax,4addax,offsetientermov[bx],axmovax,0incbxincbxmov[bx],axcalliinitmovax,data
8、movds,axmovcnt,0moval,cntmovdx,pa8255outdx,alst