数字部分-多路输出不同音频

下面这个程序会展示如何用tone()函数来实现多声道音乐控制。

由于tone()命令是由芯片内部的定时器运作的,设置你希望的频率然后用定时器脉冲输出。但是用一个定时器的话,你只能在同一个时间运行一个音符。然后,你可以在不同引脚上连续发不同音频,为了实现这个,你需要在移动到下一个音频前,关闭计时器。

硬件需求
—Arduino控制板
—8欧喇叭3个
—100欧电阻3个
—面包线
—面包板

电路
image

原理图
image

代码

下面的代码演示在每个喇叭上发出音符,注意看tone函数里面的音符持续时间和delay函数里面是一致的。

void setup() {

}

void loop() {

// 关闭引脚8的发音功能

  noTone(8);

// 在引脚6上发200ms

  tone(6, 440, 200);

delay(200);

//关闭引脚6的发音

  noTone(6);
// 在引脚7上发500ms

  tone(7, 494, 500);

delay(500);

// 关闭引脚7的发音

  noTone(7);

// 在引脚8上发300ms

  tone(8, 523, 300);

delay(300);

}
0
分享到:

评论0

请先

原Arduino365.com域名更改为品牌域名ultirobot.com,承载内容要将更丰富,网站也进行了改版,改善阅读体验。
没有账号? 忘记密码?