外部中斷0控制報警器發聲,按鍵按下,喇叭響。按鍵放開,喇叭停止響,程序經學習板測試。圖一為500Hz--150ms的信號波形,圖二為1KHz--250ms的信號波形。
#include"reg51.h"
#include"intrins.h"
#define uchar unsigned char
uchar count;
bit flag;
sbit BEEP=P3^7;
void delay500()
{
uchar i;
for(i=250;i>0;i--)
{
_nop_();
}
}
void main()
{
EA=1;
EX0=1;
while(1);
{
}
}
void timer() interrupt 0
{
for(count=150;count>0;count--)
{
BEEP=~BEEP;
delay500();
}
for(count=250;count>0;count--)
{
BEEP=~BEEP;
delay500();
delay500();
}
}


