资源描述:
《硬件8259中断 微机原理.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、CODESEGMENTASSUMECS:CODE,DS:CODEORG3000HBEGIN:JMPP8259BUFDB6DUP(?)Port0EQU0FFE0H;8259端口Port1EQU0FFE1H;8259端口ZXKEQU0FFDCH;字形口地址ZWKEQU0FFDDH;字位口地址P8259:CLI;屏蔽中断CALLWPMOVAX,OFFSETINT8259MOVBX,003CHMOV[BX],AXMOVBX,003EHMOVAX,0000HMOV[BX],AX获取中断服务程序入口地址MOVAL,13H;初始化命令字
2、1MOVDX,Port0;A0=0OUTDX,ALMOVAL,0FH;初始化命令字2MOVDX,Port1;A0=1OUTDX,ALMOVAL,01H;初始化命令字4OUTDX,ALMOVAL,7FH;操作命令字1OUTDX,ALMOVSI,0000hSTI;开中断CON8:CALLDISJMPCON8ICW1ICW2ICW4OCW1INT8259PROCNEARCLIPUSHAXPUSHBXPUSHDXMOVBX,OFFSETBUFMOVBYTEPTR[BX+SI],0F8H;数码管显示“7”INCSICMPSI,000
3、7HJNZX59MOVSI,0000HCALLWPX59:MOVAL,20H;操作命令字2MOVDX,Port0;A0=0OUTDX,ALOCW2EXIT:POPDXPOPBXPOPAXSTIIRETINT8259ENDPWPPROCNEARMOVBUF,0CH;数码管显示“P.”MOVBUF+1,0FFH;数码管全灭MOVBUF+2,0FFHMOVBUF+3,0FFHMOVBUF+4,0FFHMOVBUF+5,0FFHRETWPENDPDISPROCNEARMOVCL,20HMOVBX,OFFSETBUFDIS1:MOV
4、AL,[BX]MOVDX,ZXKOUTDX,ALMOVAL,CLMOVDX,ZWKOUTDX,ALPUSHCXMOVCX,0100HDISP:LOOPDISPPOPCXCMPCL,01HJZEXIT1INCBXSHRCL,1JMPDIS1EXIT1:RETDISENDPCODEENDSENDBEGINIR7的地址003CH003DH003EH003FHINT8259的地址00H00H中断服务程序入口地址偏移量段基地址该中断源的中断服务程序入口地址ICW1ICW2可以任意取值中断向量码IRD7D6D5D4D3D2D1D07T
5、7T6T5T4T31116110510141003011201010010000中断向量码:00001111中断向量地址:001111003CHICW4没用嵌套没有级联外部中断,且可以人为控制;程序也可自动结束000X0XX1OCW1只有IR7可正常工作OCW2单一中断——IR7;无优先权问题XXX00XXX只是给一个中断结束的指令只要不是010就行