80c32单片机外部中断的使用

⌚Time: 2022-10-23 15:31:50

👨‍💻Author: Jack Ge

51单片机共有5个中断源,分别为:

外部中断0

定时器0中断

外部中断1

定时器1中断

串口中断

| 中断| 中断向量|

|--|--|

| INT0 |0 |

| T0 |1 |

| INT1 |2 |

| T1 |3 |

| 串口中断 |4 |

中断函数写法


void function_name() interrupt 0{

}

interrupt 0表示是0号中断的处理函数

中断函数不用在主函数中调用,只要中断事件发生,单片机自己主动会调到中断函数中。


80c32单片机P3.2、P3.3、P3.4、P3.5分别是INT0、T0、INT1、T1中断

使用中断方法:

1.EA=1(总中断开关打开)

2.EX0/EX1=1(中断0/1的开关打开)

3.IT0/IT1=1(设置中断0/1触发方式,1为下降沿触发,0为低电平触发)

使用外部中断0实现按键点亮灯泡


#include <REG52.h>

sbit LED = P2^0;

void light_led()interrupt 0{

    LED = 1;

}

void main(){

    EA=1;

    EX0=1;

    IT0=1;

    P2 = 0x0;

    while(1){

        ;

    }

}

效果

在这里插入图片描述