51单片机,中断

 #include <reg52.h>

sbit d1 = P1^0;       // 定义第一个发光二极管
int i;
void main(){
    EA = 1; // 开总中断
    EX0=  1;             //  开外部中断0
    /***
    因为这两个地方涉及到内部寄存器,不是外部IO口,所以默认的电平是0,只有外部IO口,默认开机电平为1
    */
//    IT0=1; //  跳变沿方式 按位操作
//    TCON = 0x01; // 跳变沿方式      按寄存器操作
    while(1){
    d1=1;
    }
 }
// 用杜邦线 短接P2^3口和GND
 void enter0() interrupt 0{
      d1=0;
     for(i=0;i<10000;i++);
 }

看图,就是第一行的寄存器,依次赋值。

EA,EX0,IT0,

赋值后,中断就可以用了。

原文地址:https://www.cnblogs.com/sdgtxuyong/p/14865419.html