喇叭的声音难听

[复制链接]
 楼主| danpianjizui 发表于 2009-11-19 21:52 | 显示全部楼层 |阅读模式
刚开始学单片机  觉得喇叭没有蜂鸣器那么简单 直接给高低电平就好  我经常用下面的程序控制喇叭发声 不过声音很难听  我把控制频率的延迟从小调到大 都很难听  各路高手给小弟稍微指点下  你们常用的控制方法是什么   不吝赐教

sbit spk=P1^2;//喇叭接口
void delay(unsigned int cnt)
{
       while(--cnt);
}
while(1)
{
       for(n=0;n<200;n++)
       {
               delay(80);
                spk=!spk;
        }  
         spk=1;
         delay(20000);
}
ejack 发表于 2009-11-19 21:58 | 显示全部楼层
扬声器不适合用单片机管脚直接驱动。
zydlyq 发表于 2009-11-19 22:03 | 显示全部楼层
因该是IO口的输出电流不足以驱动喇叭吧。
sz_kd 发表于 2009-11-19 22:03 | 显示全部楼层
LZ你发单一频率当然难听啊,最好结合硬件产生余音比较好听
lanction 发表于 2009-11-19 22:07 | 显示全部楼层
不知道你电路如何,看喇叭的手册(驱动电流、电压、功率等),如果想靠单片机引脚直接给电流驱动那肯定不行的
 楼主| danpianjizui 发表于 2009-11-22 19:45 | 显示全部楼层
你的意思是单片机上面应该用蜂鸣器  简单 也好控制 2# ejack
 楼主| danpianjizui 发表于 2009-11-22 19:46 | 显示全部楼层
恩  我考虑了下 应该是频率太低的问题  但就是试了很多参数 都不怎么样 没有蜂鸣器声音那么尖 3# zydlyq
 楼主| danpianjizui 发表于 2009-11-22 19:47 | 显示全部楼层
哦 你的意思是连续给不同的频率发声  高明啊  我试下 谢了
4# sz_kd
 楼主| danpianjizui 发表于 2009-11-22 19:48 | 显示全部楼层
好的 谢谢  电路只能算基础吧 呵呵 5# lanction
lanction 发表于 2009-11-23 20:04 | 显示全部楼层
嗯,输出电路跟扬声器间接耦合电容的不?不接电容,可能会有直流干扰到扬声器噪声大;接的话,该电容可能会跟扬声器电阻构成高通滤波器,适当更改电容大小,我只知道这么多了,祝成功!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

111

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部

7

主题

111

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部