首页 >> 知识 >> 关于51单片机外部中断的触发方式

关于51单片机外部中断的触发方式

51单片机有两个外部中断申请输入端:INT0 和 INT1。51单片机的外部中断,分为低电平触发和下降沿触发。在单片机内部,分别由控制位 IT0 和 IT1 来控制。复位时,IT0/1 都为 0,即默认为低电平触发。

一般来说,外设第一次向单片机申请外部中断时,单片机使用那种触发方式,并无什么差别。但是,返回主程序后,如果外部申请信号仍然是低电平,就有区别了。

在采用低电平触发时,单片机执行了一条主程序的指令后,就会又重新进入中断程序。

而采用下降沿触发时,即使 INT0/1 引脚仍然是低电平,单片机也不会重新进入中断程序。如果外设想要申请第二次中断,必须是先恢复高电平,重新再送来一次下降沿才行。

那么,为了避免仅仅来了一次申请,就产生多次中断的现象,还是应该采用下降沿触发中断的方式。

如果非要使用低电平触发呢,那必须在退出前,反复的检测中断输入端的电平。只有当外设撤消了中断申请之后,再退出中断程序,这才能避免多次的重新中断。

到底应该采用那种触发方式,这个确实是应该根据外设的特点来选取。但是在多数场合,采用下降沿触发方式,还是比较适用的。即在复位后,应该先执行:

SETB  IT0SETB  IT1

有人在百度知道,提出了一个问题,希望能显示出低电平触发和下降沿触发的区别。

题目的基本内容如下。

;单片机汇编程序题:要求一定是汇编

;AT89C51中P3.2接开关1,P3.3接开关2。;当开关1, 2全都断开时运行主程序,P1口的8个LED从P1.0~P1.7逐个点亮并反复循环。;当开关1闭合时进入中断服务程序P2口的8个LED闪烁6次。;开关2起到对开关1触发方式进行选择的作用:;第一次闭合开关2时开关1为下降沿触发且P0.0连接的LED点亮;;第二次闭合开关2时开关1为低电平触发且P0.0连接的LED熄灭。;求一个用汇编语言编写的完整程序。

根据上述题目要求,做而论道画出了PROTEUS仿真实验电路如下:

插图

网站地图