|
樓主抄作業(yè)也抄錯了吧。你這程序只能短暫響一下就沒聲音了。給你改一下并詳細(xì)注釋。
void timer() interrupt 1
{//功能:急促響鈴聲,適用于報警
static uint16 count=0;//靜態(tài)局部計數(shù)變量
// uint16 count;//錯誤:重復(fù)定義同名變量
if(num>0)//num響鈴次數(shù)變量
{
count++;
if(count<=1000)//<0.25秒
beep=~beep;//蜂鳴器響鈴,頻率2KHz
if(count>1000) //>0.25秒
beep=1; //蜂鳴器復(fù)位
if(count>=2000)//0.5秒周期
{
count=0; //計數(shù)變量清0
num--; //響鈴次數(shù)減1,直減到為0結(jié)束
}
}
} |
|