51单片机控制蜂鸣器发出911声音c程序如下,求老师详细讲解,谢谢(最好可以详细讲解一下frq怎样使用的)

main()
{
TMOD = 0x01;
frq = 0x00;
TH0 = 0x00;
TL0 = 0xff;
TR0 = 1;
IE = 0x82;

while(1)
{
frq++;
delayms(1);
}
}
void timer0() interrupt 1 using 1
{
TH0 = 0xfe;
TL0 = frq;
SPK = ~SPK;
}

什么叫911声音??不明白

看程序应该是发出的声音频率越来越高,然后突然降低,再越来越高,如此循环
main()
{
TMOD = 0x01; //设定时方式1,16位定时器
frq = 0x00;
TH0 = 0x00; //赋初值
TL0 = 0xff; //赋初值
TR0 = 1; //开始计数
IE = 0x82; //允许中断

while(1)
{
frq++; //每个毫秒增加频率,直至frq=0,频率下降,如此循环
delayms(1);
}
}
void timer0() interrupt 1 using 1
{
TH0 = 0xfe;
TL0 = frq; //根据frq改变定时器的值
SPK = ~SPK; //发出占空比50%的音频
}
温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网