单片机小白学习之路(十四)---外部中断1实现蜂鸣器报警

目标:外部中断1实现蜂鸣器报警

#include

typedef unsigned int u16;
typedef unsigned char u8;

sbit k1 = P1^4;  //独立按键
sbit beef = P1^5;  //蜂鸣器端口
u8 beef_flag = 0;   //方便便利的状态标准

void delay(u16 i)
{
    while(i--);
}

void INT1init() //INT1的初始化
{
    EA = 1;
    IT1 = 1;
    EX1 = 1;
}
void main()
{
    INT1init();   
    while(1){
        if(beef_flag==1){
            delay(10);
            beef=~beef; }   //蜂鸣器状态取反
    }
}

void Int1() interrupt 2 //外部中断1的中断号是数字2
{
    delay(1000);
    if(k1==0){
        beef_flag = ~beef_flag;   // 状态标志取反
        delay(10);
    }
}

你可能感兴趣的:(单片机小白学习之路(十四)---外部中断1实现蜂鸣器报警)