资源描述:
《北京理工大学微机原理实验报告一二三.docx》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、微机原理与接口技术硬件实验报告姓名:班级:学号:实验一8259中断控制器实验实验内容用单脉冲发生器的输出脉冲为中断源,每按一次产生一次中断申请,点亮或熄灭发光二极管。二,实验目的(1)掌握8259的工作原理。(2)掌握编写中断服务程序的方法。(3)掌握初始化中断向量的方法。实验步骤(1)连线单脉冲发生器输出P+与8259的IR0相连;8259的片选CS8259与CS0相连;8259的INT与8086的INT相连;8259的INTA与8086的INTA相连;CS273与CS1相连;00与LED0相连,01与LED1相连,依次将CS273接口与LED相连;其它线均已连好
2、如下图:(2)编辑程序,编译链接后,单步运行,调试程序。(3)调试通过后,在中断服务程序的NOP处设置断点,运行程序,当接收到中断请求后,程序停在中断服务程序内的断点处,观察寄存器AX的值。四,实验源程序如下CODESEGMENTPUBLICASSUMECS:CODEORG100HSTART:MOVDX,4A0H;写ICW1,单片8259A,要写0CW4MOVAX,13HOUTDX,AXMOVDX,4A2H;写ICW2MOVAX,80H;IR0的中断向量码为80HOUTDX,AXMOVAX,01OUTDX,AX;一般嵌套,非缓冲方式,非自动EOIMOVAX,0;写O
3、CW1OUTDX,AX;允许中断;中断向量存放在(0000H:0200H)开始的四个单元里MOVAX,0MOVDS,AXMOVSI,200H;中断类型号为80HMOVAX,OFFSETHINT;中断服务程序的入口地址MOVDS:[SI],AXADDSI,2MOVAX,CSMOVDS:[SI],AXSTI;开中断,设置IF=1JMP$;原地跳转HINT:;中断服务程序XORCX,0FFH;CX取反MOVDX,4B0H;CS273接口的地址,与8个LED灯相连MOVAX,CX;输出高低电平控制LED灯的亮灭OUTDX,AXMOVDX,4A0H;OCW2的地址MOVAX,
4、20H;一般EOI命令,全嵌套方式OUTDX,AXIRET;中断返回CODEENDSENDSTART实验思考题将P0连线连接到IR1—IR7任意一个;重新编写程序。将P0接到了IR1,在原程序的基础上,把写ICW2的控制字改为81H,再把中断向量的入口地址改为0204H即可。程序如下:CODESEGMENTPUBLICASSUMECS:CODEORG100HSTART:MOVDX,4A0H;写ICW1,单片8259A,要写ocw4MOVAX,13HOUTDX,AXMOVDX,4A2H;写ICW2MOVAX,81H;IR1的中断向量码为81HOUTDX,AXMOVAX
5、,01OUTDX,AX;一般嵌套,非缓冲方式,非自动EOIMOVAX,0;写OCW1OUTDX,AX;允许中断;中断向量存放在(0000H:0204H)开始的四个单元里MOVAX,0MOVDS,AXMOVSI,204H;中断类型号为81HMOVAX,OFFSETHINT;中断服务程序的入口地址MOVDS:[SI],AXADDSI,2MOVAX,CSMOVDS:[SI],AXSTI;开中断,设置IF=1JMP$;原地跳转HINT:;中断服务程序XORCX,0FFH;CX取反MOVDX,4B0H;CS273的地址MOVAX,CX;输出高低电平控制LED灯的亮灭OUTDX
6、,AXMOVDX,4A0H;OCW2的地址MOVAX,20H;一般EOI命令,全嵌套方式OUTDX,AXIRET;中断返回CODEENDSENDSTART实验现象:运行程序,触发脉冲发生器产生中断请求,相应二极管点亮。设置OCW1,屏蔽某个中断请求,运行程序观察现象。将IR0重新接入LED0,设置OCW1为01H,屏蔽中断IR0,则IR0的中断无法得到响应。程序如下:CODESEGMENTPUBLICASSUMECS:CODEORG100HSTART:MOVDX,4A0H;ICW1的地址,写初始化命令字ICW1MOVAX,13H;上升沿触发,单片8259,要写ICW
7、4OUTDX,AXMOVDX,4A2H;ICW2的地址,写中断向量码ICW2MOVAX,80H;IR0的中断向量码为80HOUTDX,AXMOVAX,01;写中断结束控制字ICW4OUTDX,AX;一般嵌套,非缓冲方式,非自动EOIMOVAX,01H;写中断屏蔽字OCW1OUTDX,AX;屏蔽IR0中断;中断向量存放在(0000H:0200H)开始的四个单元里MOVAX,0MOVDS,AXMOVSI,200H;中断类型号为80HMOVAX,OFFSETHINT;中断服务程序的入口地址MOVDS:[SI],AXADDSI,2MOVAX,CSMOVDS:[SI],A