Arduino 的tone()函数在驱动有源蜂鸣器的时候为什么可以接非PWM的数字接口?比如8号口

Arduino 的tone()函数在驱动有源蜂鸣器的时候为什么可以接非PWM的数字接口?比如8号口,第1张

有源蜂鸣器内部具有谐振机构,只要供电就能按照其固有谐振频率出声。也可以通过PWM令其近似发出更高频率的响段败银握宴声。

要分清楚蜂鸣器beeper和扬声器speaker的区别。后者才是更枯型纯粹的电声设备,最好用正弦波驱动。

arduino蜂鸣器声音大小用Tone函数表示

因为Arduino的Tone函数关于arduino播放音乐的原理,可以看上面链接的tahoroom的文章,他讲得相当详细。Arduino官方提供的Tone函数用于驱动蜂鸣器或扬声器发出我们需要的声音,通常的应用如下:tone(pin,frequency,duration)//控制pin脚上的音频输出//pin:arduino的控制脚位;//frequency:输出的声音频率,换到音乐上可理解为旋律音高;//尘简duration:旋律持续时间,单位ms;noTone(pin)//停止播放;详细的tone函数定义也可以参考官方介绍:

2、pitches.h的添加为了避免链兄做在主程序里添加太多的定棚衡义,我们把音高的定义独立出来放在一个头文件pitches.h里,然后在主程序里引用即可,下次需要同样的功能时,也可以直接拷贝调用该头文件。代码如下://pitches.h 音高定义//pitches.h 定义了不同音符对应的不同频率#define NOTE_B0 31 //B0 ····7#define NOTE_C1 33 //C1 ···1#define NOTE_CS1 35 //C1##define NOTE_D1 37 //D1 ···2#define NOTE_DS1 39 //D1##define NOTE_E1 41 //E1 ···3#define NOTE_F1 44 //F1 ···


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12474970.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存