问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Arduino平台软硬件原理及使用——无源蜂鸣器模块的使用

创作时间:
作者:
@小白创作中心

Arduino平台软硬件原理及使用——无源蜂鸣器模块的使用

引用
CSDN
1.
https://blog.csdn.net/qq_37744263/article/details/139839204

Arduino平台软硬件原理及使用——无源蜂鸣器模块的使用

一、蜂鸣器发声原理

上图为常见的不同封装及规格的蜂鸣器。

同蜜蜂、知了等昆虫发声原理一样,蜂鸣器同样靠振动来发出声音;

如上图为无源蜂鸣器的内部结构,振动片一般为压电陶瓷,当电源导通后,电能会通过压电陶瓷转化机械能,从而通过振动来发出声音。

上图为不同物种对于发声频率和听觉频率的不同,后文在使用无源蜂鸣器进行发声时,可参考人的听觉频率进行测试。

二、无源蜂鸣器与有源蜂鸣器的区分

关于有源蜂鸣器无源蜂鸣器外观上的区别,其正面都是一样的,唯独底面一个由黑胶包裹,一个为裸露的电路板 ,正如以下实物图所示:

另外关于两者的使用区别也容易理解:

有源蜂鸣器只要通电即可连续发出声音,但音色无法改变;

无源蜂鸣器需要接在音频输出电路中才能使用,可以通过改变频率来改变音色

三、无源蜂鸣器模块在Arduino中的使用

如上无源蜂鸣器模块共有三个引脚:

VCC 接电源正极

GND 接电源负极

IO 接数字输出端口

按照上图将无源蜂鸣器模块与Arduino进行连接,并完成以下程序:

//此程序用于测试无源蜂鸣器的使用
void setup() 
{
    pinMode(7,OUTPUT);  //设置蜂鸣器连接的7号端口为输出
}
void loop() 
{
    tone(7,555);  //tone函数的作用为使蜂鸣器以指定频率发声
                  //tone(端口号 ,发声频率);
}

程序中的“tone(7, 555)”作用为使得7号端口的蜂鸣器以555的频率发声;上传后,会发现蜂鸣器会持续发声,不妨改变一下程序,使得蜂鸣器可以像警报一样断断续续的发声:

//此程序可以使蜂鸣器间断性的发声
void setup() 
{
    pinMode(7,OUTPUT);  //设置蜂鸣器连接的7号端口为输出
}
void loop() 
{
    tone(7,555);  //tone函数用于发声
    delay(300);  //延时300毫秒
    noTone(7);  //使7号端口的蜂鸣器停止发声
    delay(300);  //延时300毫秒
}

此程序又引入了“noTone(7)”,其作用为使7号端口的蜂鸣器停止发声,可以尝试改变发声的频率,并上传测试。

关于无源蜂鸣器模块的具体实例可参考文章——Arduino项目式编程教学第五章——激光报警装置

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号