📄 interrupt.c
字号:
#include <REG51.H>
#include <sys.h>
//说明:按下S18外部中断0按键蜂鸣器开始鸣叫,按下S19外部中断1按键蜂鸣器停止鸣叫
static uchar beep_flag = 0;
void delay ();
void speaker1();
void ISRit0(void) interrupt 0 using 0
{
EA = 0;
beep_flag = 1;
EA = 1;
}
void isr_it1(void) interrupt 2 using 1
{
EA = 0;
beep_flag = 0;
EA = 1;
}
void main()
{
EA = 1;
IT0 = 1;
EX0 = 1;
EX1 = 1;
speaker1();
while(1)
{
if(beep_flag)
speaker1();
delay();
}
}
void delay()
{
uchar i = 0;
uchar j = 0;
for (j=0;j<255;j++)
{
for (i=0; i<250; i++)
;
}
}
void speaker1()
{
delay ();
P2 = 0x10;
P0 = 0xf7;
P2 = 0x00;
P2 = 0x80;
P0 = 0x01;
delay ();
P0 = 0x00;
P2 = 0x00;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -