您的位置:首页 > 产品设计 > UI/UE

【Arduino官方教程第一辑】示例程序 2-8 曲调2

2016-05-03 09:03 489 查看

曲调2

tone()函数通过控制Atmega处理器的内部定时器来工作。它会根据你设定的频率在输出引脚上输出脉冲信号。由于tone()只使用了一个定时器,因此你只能同时在一个扬声器上播放。不过,你可以按照一定顺序的在不同引脚之间快速切换来实现多个扬声器“同时”播放。为了做到这一点,你需要将在一个引脚发声后,快速的“转向”下一个引脚。

完成本例所需的硬件

Arduino板或Genuino板

3个8Ω扬声器

3个100Ω电阻

跳线

面包板

线路连接



原理图



例程代码

下列工程按照顺序在不同扬声器上播放声音(在后一个播放之前将前一个关闭)。注意,每次播放音符的时间应和之后delay的时间一样。

/*
曲调2

按照顺序在不同扬声器上播放音符。

电路连接:
* 3个8Ω扬声器分别连接到数字引脚6、7和8

代码是公开的
*/

void setup() {

}

void loop() {
// 关闭8号引脚上的tone:
noTone(8);
// 在6号引脚上播放200毫秒:
tone(6, 440, 200);
delay(200);

//  关闭6号引脚上的tone:
noTone(6);
//在7号引脚上播放500毫秒:
tone(7, 494, 500);
delay(500);

// 关闭7号引脚上的tone:
noTone(7);
//在8号引脚上播放500毫秒:
tone(8, 523, 300);
delay(300);
}


tone()

LED闪烁进阶:不用delay()函数的LED闪烁工程。

按钮:用按钮控制LED。

按键去抖:读取一个按钮状态,并且滤去干扰。

数字引脚上拉电阻:展示pinMode()函数INPUT_PULLUP 常量的使用。

按钮状态改变的探测:记录按钮被按下的次数。

音乐键盘:使用压力传感器和压电扬声器制作三键电子琴。

使用tone()函数弹奏一段小曲:使用压电扬声器播放一段曲调。

曲调2:使用tone()函数操作多个扬声器播放曲调。

曲调3:根据模拟信号通过压电扬声器播放一个音调。

更新进程

日期日志译者
2016年5月1日创建并翻译文档唐家勋

译者:唐家勋

邮箱:mrsteventang@gmail.com

QQ:649196486

转载请注明出处,一切只因为热爱。

希望您能指出宝贵意见,谢谢。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: