欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

51单片机之中断使用

程序员文章站 2022-06-09 15:45:14
...
#include <reg52.h>

void delay(unsigned int xms)
{
 unsigned int i,j;
 for(i=xms;i>0;i--)
     for(j=112;j>0;j--);
}

 void main()
 {
  P1=0x0f;	 //P1指示灯引脚
  EX1=1;     //外部中断0允许位
  EA=1;		 //打开全局中断
  IT1=0;	 //设置外部中断方式	  0:低电平触发方式  1:负跳变触发方式
  while(1);
 }

 void low() interrupt 0
 {
 P1=~P1;
 delay(200);
 }

1.关于P1八位流水灯引脚,引脚有一个上拉的5V电源,所以程序写时P1的八位,为1时灯不亮,为0时灯亮,电路图如下

51单片机之中断使用

2. 关于IT1=0/1中断方式:

IT0表示INT0的中断方式,INT1表示INT1的中断方式

当INT1=0时:低电平触发方式,意思是给INT0的引脚一个低电平的电压,中断变一直触发,实验时,接通GND,则指示灯不停闪亮,不停触发中断

当INT1=1时,负跳变触发方式,表示一个低电平电压触发一次,实验时接通一次GND,指示灯亮一次

3.实验时将INT0/INT1的引脚接通按键所测试,按键的电路图如下

51单片机之中断使用

主电路图如下 :

51单片机之中断使用