注册 登录
编程论坛 单片机编程

无源蜂鸣器声音过小

超电磁场 发布于 2017-04-14 12:09, 3471 次点击
只有本站会员才能查看附件,请 登录


电路图如上...

#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit buzzer=P2^0;
sbit D1=P1^0;
void delay(uint z)//延时1ms
{
    uint x,y;
    for(x=z;x>0;x--)
    {
        for(y=0;y<114;y++)
        {
        }
     }
}
void fasheng() //发声子程序
{
    unsigned int a,x;
    for (a=0;a<100;a++)
    {
        buzzer=!buzzer;
        for (x=0;x<60;x++); //45为蜂鸣器发声频率
    }
}
void main()
{
    while (1)
    {
        D1=0;
        fasheng();
        D1=1;
        delay(1000);
    }
}

程序如上...

现在这个东西的情况是它发出的声音超级小,好像蚊子咬一样..
我的理解是,这个东西的发声分贝是和电路有关,程序改变频率..
所以我觉得主要是硬件出了事,VCC 5V,蜂鸣器电阻8欧 功率0.5W..

第一次玩蜂鸣器,没想到就出了事
2 回复
#2
hu9jj2017-04-14 19:36
将电阻的阻值改成1K试试看,另外可能三极管的功率小了,换成低频功率管试试。
#3
blhyy2019-02-11 10:50
查一下你的板子,看看控制蜂鸣器的I/O是哪个管脚,然后定义它,这样声音会重了。我也碰到过这个问题。
1