欢迎光临
我们一直在努力

数字部分-旋律音调

这个示例将展示如何用ton()来发出音符,演奏一段简单的旋律。

硬件需求

—Arduino控制板

—8欧喇叭

原理图

clip_image002

原理图

clip_image004

代码

下面的代码会用到额外的库文件“pitches.h”,这个库外立面包含了完整的音符值。打个比方,NOTE_C4就是C中调,NOTE_FS4就是升F调等等。

#include "pitches.h"

// 旋律中的音符

int melody[] = {

  NOTE_C4, NOTE_G3, NOTE_G3, NOTE_A3, NOTE_G3, 0, NOTE_B3, NOTE_C4

};

// 音符时值: 4 = 4分音符, 8 = 8分音符, 等等:

int noteDurations[] = {

4, 8, 8, 4, 4, 4, 4, 4

};

void setup() {

// 循环旋律中的音符:

for (int thisNote = 0; thisNote < 8; thisNote++) {

// 为了计算音符时间,我们用1秒作为每个音符单位

//举例子四分音符 = 1000 / 4, 8分音符 = 1000/8, .

int noteDuration = 1000 / noteDurations[thisNote];

tone(8, melody[thisNote], noteDuration);

// 为了辨别音符,设置一个最小区别时间

// 音符音长 + 30%:

int pauseBetweenNotes = noteDuration * 1.30;

delay(pauseBetweenNotes);

// 停止tone播放:

noTone(8);

}

}

void loop() {

// 不需要再重复

}

未经允许不得转载:Arduino-Maker » 数字部分-旋律音调

支付宝扫码打赏 微信打赏

原创文章,若帮到您,欢迎打赏

分享到:更多 ()

评论 抢沙发

评论前必须登录!

 

线上商城

中贝斯特创客空间蘑菇云创客教育