使用Ardulno ide开发板 无源蜂鸣器编写欢乐颂的代码
时间: 2024-05-02 10:16:41 浏览: 128
以下是使用Ardulno ide和Arduino开发板编写欢乐颂的无源蜂鸣器代码:
```
int melody[] = { // 欢乐颂的频率
659, 659, 0, 659, 0, 523, 659, 0, 784, 0, 0, 0, 392, 0, 0, 0
};
int noteDuration[] = { // 每个音符的持续时间
125, 125, 250, 125, 250, 125, 125, 250, 125, 250, 250, 250, 125, 250, 250, 250
};
void playTone(int tone, int duration) { // 发出一个音符
for (long i = 0; i < duration * 1000L; i += tone * 2) {
digitalWrite(8, HIGH); // 将引脚8设置为高电平
delayMicroseconds(tone); // 等待音符的持续时间的一半
digitalWrite(8, LOW); // 将引脚8设置为低电平
delayMicroseconds(tone); // 等待音符的持续时间的一半
}
}
void playMelody() { // 播放欢乐颂
for (int i = 0; i < sizeof(melody) / sizeof(int); i++) {
if (melody[i] == 0) { // 如果是休止符,等待相应时间
delay(noteDuration[i]);
} else { // 发出一个音符
playTone(melody[i], noteDuration[i]);
}
delay(noteDuration[i] / 2); // 等待下一个音符之前的一点时间
}
}
void setup() {
pinMode(8, OUTPUT); // 将引脚8设置为输出模式
}
void loop() {
playMelody(); // 循环播放欢乐颂
}
```
将该代码上传到Arduino开发板,连接无源蜂鸣器到引脚8,即可播放欢乐颂的旋律。
阅读全文