使用arduino编写蜂鸣器演奏 大鱼的代码
时间: 2023-06-14 13:08:20 浏览: 267
以下是使用Arduino编写蜂鸣器演奏《大鱼》的代码:
```c++
int melody[] = { // 定义大鱼的音符
NOTE_C4, NOTE_D4, NOTE_E4, NOTE_F4, NOTE_G4, NOTE_G4, NOTE_F4, NOTE_E4,
NOTE_D4, NOTE_C4, NOTE_C4, NOTE_D4, NOTE_E4, NOTE_E4, NOTE_D4, NOTE_C4,
NOTE_D4, NOTE_E4, NOTE_F4, NOTE_G4, NOTE_G4, NOTE_F4, NOTE_E4, NOTE_D4,
NOTE_C4, NOTE_C4, NOTE_G4, NOTE_G4, NOTE_F4, NOTE_E4, NOTE_D4, NOTE_C4
};
int noteDurations[] = { // 定义大鱼的音符时长
4, 4, 4, 4, 4, 2, 2, 4,
4, 4, 4, 4, 4, 2, 2, 4,
4, 4, 4, 4, 4, 2, 2, 4,
4, 4, 4, 4, 4, 2, 2, 4
};
void setup() {
pinMode(8, OUTPUT); // 设置蜂鸣器引脚为输出模式
}
void loop() {
for (int i = 0; i < 32; i++) { // 播放大鱼的音符
int noteDuration = 1000 / noteDurations[i];
tone(8, melody[i], noteDuration);
delay(noteDuration * 1.3);
noTone(8);
}
delay(5000); // 暂停5秒后再次播放
}
```
在代码中,我们首先定义了大鱼的音符和音符时长,并在`setup()`函数中将蜂鸣器引脚设置为输出模式。然后,我们在`loop()`函数中使用`for`循环来播放大鱼的音符,每个音符的时长通过`tone()`函数来控制。最后,我们通过`delay()`函数来暂停5秒后再次播放。
阅读全文