为什么第一个程序声音很小,第二个声音就正常

[复制链接]
393|17
手机看帖
扫描二维码
随时随地手机跟帖
wangzsa|  楼主 | 2022-5-12 23:18 | 显示全部楼层 |阅读模式
#include<reg52.h>
sbit Beep=  P1^5 ;
int a;
void Delay(unsigned int i) ;
void main()
{
          while(1)
        {
        a=60000;
        Beep= 1;
        while(a--);
        a=60000;
        Beep= 0;
        while(a--);
        
        }
}


#include <reg52.h>
sbit Beep =  P1^5 ;
void Delay(unsigned int i) ;
void main()
{
        Beep= 1;
        Delay(5);
        Beep= 0;
        Delay(5);
}
void Delay(unsigned int i)
{
        char j;
        for(i; i > 0; i--)
                for(j = 200; j > 0; j--);
}  

第一个程序声音很小,第二个声音就正常,为什么呢?有什么区别?

使用特权

评论回复
wangzsa|  楼主 | 2022-5-12 23:20 | 显示全部楼层
我把a值调小,只是响的频率快了,但声音还是很小啊

使用特权

评论回复
jiajs| | 2022-5-12 23:22 | 显示全部楼层
把A值改到50

使用特权

评论回复
supernan| | 2022-5-12 23:25 | 显示全部楼层
你的晶振取多大,用软件模拟下看看延时时间多少,频率太低或太高都不行,超过音频的范围人耳是听不到的

使用特权

评论回复
huangchui| | 2022-5-12 23:27 | 显示全部楼层

先搞清楚你驱动的是有源蜂鸣器还是无源的,无源的要送震荡信号,有源的是送电源,另外软件延时的时间长度要实际测试,时间断了蜂鸣器根本来不及叫出声音。
一般来说开发板上都是有源蜂鸣器,驱动时间50mS以下,就不是很听得清了。

使用特权

评论回复
chuxh| | 2022-5-12 23:29 | 显示全部楼层
正解,弄清有源无源才是关键,知道有源无源一个蜂鸣器还怕它叫不大声?

使用特权

评论回复
yangxiaor520| | 2022-5-13 19:07 | 显示全部楼层
第一个延时太长

使用特权

评论回复
juventus9554| | 2022-5-13 22:48 | 显示全部楼层
无源蜂鸣器的响度与频率有关的,一般是2K的频率

使用特权

评论回复
xxrs| | 2022-5-13 22:53 | 显示全部楼层
我一般都用的PWM波控制的

使用特权

评论回复
wyjie| | 2022-5-13 22:55 | 显示全部楼层
int a的值达不到60000,uint a 才能

使用特权

评论回复
juventus9554| | 2022-5-13 22:57 | 显示全部楼层

int a = 60000;while(a--)...;
应该可以的,while中不会判断符号,只会判断是不是0;这就是补码负数的好处之一了;
出现赋值符号处,应该有些警告

使用特权

评论回复
tian111| | 2022-5-13 23:00 | 显示全部楼层

确定是无源蜂鸣器,控制方式不一样!
查一下振荡频率,太高了声音会变小!
增加一下驱动电流!

使用特权

评论回复
renyaq| | 2022-5-13 23:02 | 显示全部楼层
直接加电,能响的蜂鸣器是有源的,不响的是无源的,坏的除外.

使用特权

评论回复
jlyuan| | 2022-5-13 23:04 | 显示全部楼层
声音的三要素:音调、音色、响度。

三者之中,你拿捏有几?

使用特权

评论回复
renyaq| | 2022-5-13 23:06 | 显示全部楼层
楼主问题解决了啊??是因为控制方式的问题吗?

使用特权

评论回复
jiajs| | 2022-5-13 23:08 | 显示全部楼层
这个表示不懂,为什么一定要知道是有源还是无源呢??

使用特权

评论回复
wangzsa|  楼主 | 2022-5-13 23:10 | 显示全部楼层

唉,还是没有什么结果,算了,多谢大家啦

使用特权

评论回复
lidi911| | 2022-5-14 18:57 | 显示全部楼层
是无源蜂鸣器还是有源蜂鸣器

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则