实验一 外部中断实验
一、实验要求
用单次脉冲申请中断,在中断处理程序中对输出信号进行反转。
二、实验目的
1、学习外部中断技术的基本使用方法。
2、学习中断处理程序的编程方法。
三、实验原理
当89C51的CPU正在处理某件事情(如正在执行主程序)时,单片机外部或内部发生的某一事件(如外部设备产生的一个电平变化或脉冲跳沿的变化,或者是片内事件的发生,如计数器的计数溢出等)请求CPU迅速去处理,于是CPU暂时中止当前的工作,转到中断服务处理程序处理所发生的事件。中断服务处理完该事件后,再回到原来被终止的地方,继续原来的工作(如继续执行被中断的主程序),这称为中断。
而外部中断是单片机实时地处理外部事件的一种内部机制。当某种外部事件发生时,单片机的中断系统将迫使CPU暂停正在执行的程序,转而去进行中断事件的处理;中断处理完毕后.又返回被中断的程序处,继续执行下去。
四、实验内容
单片机的INT0和INT1分别接了两个外部中断,当INT0引脚有中断时,点亮发光二极管D1,当INT1引脚有中断时,点亮发光二极管D2。SW1从高电平变为低电平时,点亮发光二极管D1;SW2从高电平变为低电平时,点亮发光二极管D2。调试程序,并运行。观察发光二极管点亮情况
五、实验程序框图
六、实验电路图
七、实验程序
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP SERVE
ORG 0013H
AJMP SERVE1
MAIN: ORL P1 ,#0FFH ;
SETB IT0;
SETB EX0;
SETB IT1;
SETB EX1;
SETB EA;
AJMP $ ;
SERVE: MOV A,#0F7H
MOV P1,A
RETI
SERVE1: MOV A,#0EFH
MOV P1,A
RETI
八、实验总结
通过本次实验,我们学习了外部中断技术的基本使用方法,以及学习中断处理程序的编程方法,这为以后学习单片机的其他方面的内容打下了铺垫。