欢迎注册,加入沙洋社区-我们的网上家园!
您需要 登录 才可以下载或查看,没有帐号?注册
x
教育穷创客Arduino编程第十课:蜂鸣器电子琴
蜂鸣器分为有源蜂鸣器和无源蜂鸣器。无源蜂鸣器的电路板通常是裸露的,而有源蜂鸣器的电路板通常是用黑色胶水覆盖的。我们之前已经学会了使用按钮。在这一节中,我们将添加一个蜂鸣器来做一个有趣的实验和一个按钮电子钢琴。
图片3.png (54.97 KB, 下载次数: 0)
2019-10-14 11:25 上传
一、实验现象
分别按第1 、蜂鸣器发出2、3个按钮时Do、Re、Mi声音。
一、电子元件:一:电子元件:
开发板、10kΩ3个电阻,3个按钮,1个无源蜂鸣器,几个面包板和杜邦线。
三、实验中使用的函数和句子
Arduino板上产生的音乐由tone()函数控制,代码有两种形式:tone(pin, frequency, duration)或tone(pin, frequency)
① 在第一个函数中,pin代表连接扬声器的管脚,frequency代表发声频率,duration代表持续时间,单位为毫秒。
② 如果使用第二个函数,则需要另一个函数noTone()函数控制音乐的停止noTone(pin)。
③ 在上一步音乐程序中,还需包括一个pitches.h文件。
四、实验电路(接线过多要小心)
图片4.png (115.67 KB, 下载次数: 0)
2019-10-14 11:25 上传
五、编写程序
#include//可以,如果没有声音,不要加这句话
void setup() {
// put your setup code here, to run once:
pinMode(3,OUTPUT);
for(int i=8;i<11;i ){
pinMode(i,INPUT);//按键端口分别为8、9和10
}
}
void loop() {
// put your main code here, to run repeatedly:
if(digitalRead(8)==HIGH){//按下按钮8时执行,下同
tone(3,525,10);/3号端口播放10微秒,频率为525(哆啦),下同。
}
if(digitalRead(9)==HIGH){
tone(3,589,10);
}
if(digitalRead(10)==HIGH){
tone(3,661,10);
}
}