#include<reg52h>
sbit beep=P0^4;
void main()
{
beep=0;
while(1);
}
试试这个怎样,单片机在执行完程序之后会回到初始状态,然后再重新执行程序,所以蜂鸣器就会反复的开和关,听起来声音会小很多;加个while(1)死循环,让程序一直保持在beep=0的状态。
你说的应该是无源蜂鸣器,需要外部提供脉冲信号才会发声,且声音会随脉冲频率变化而变化。而有源蜂鸣器内部有振荡器,所以只需要提供电压(高电平)就能发声,它们的原理不同,你提到的应该是前者。
举例说明吧,你定义 一个IO连接蜂鸣器。比如,sbit fmq=P1^0; 再来个500US延时函数。
void beep() //所以会产生1KHZ频率声音
{
fmq=0;
delay500us();
fmq=1;
delay500us();
}
以上就是关于STC51单片机C语言开启蜂鸣器全部的内容,包括:STC51单片机C语言开启蜂鸣器、蜂鸣器程序修改、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)