Arduino无源蜂鸣器写个小星星
时间: 2024-04-02 18:29:36 浏览: 215
Arduino无源蜂鸣器是一种常用的音频输出设备,它可以通过控制蜂鸣器的频率和持续时间来产生不同的声音。下面是一个简单的示例代码,用于演奏《小星星》的音乐:
```cpp
int buzzerPin = 9; // 将蜂鸣器连接到Arduino的9号引脚
// 定义小星星的音符频率
int melody[] = {
262, 262, 392, 392, 440, 440, 392,
349, 349, 330, 330, 294, 294, 262
};
// 定义小星星的音符持续时间
int noteDuration = 200;
void setup() {
pinMode(buzzerPin, OUTPUT);
}
void loop() {
// 播放小星星的音乐
for (int i = 0; i < sizeof(melody) / sizeof(melody[0]); i++) {
int note = melody[i];
tone(buzzerPin, note, noteDuration);
delay(noteDuration);
noTone(buzzerPin);
delay(noteDuration / 2);
}
}
```
这段代码使用了Arduino的`tone()`函数来产生指定频率的声音,并通过`delay()`函数来控制每个音符的持续时间。在`loop()`函数中,通过循环遍历`melody`数组中的音符频率,依次播放《小星星》的每个音符。
相关问题
arduino无源蜂鸣器
Arduino 无源蜂鸣器可以通过直接连接到数字引脚来控制。以下是连接步骤:
1. 将无源蜂鸣器的正极连接到 Arduino 数字引脚。
2. 将无源蜂鸣器的负极连接到 Arduino GND 引脚。
接线完成后,可以使用以下代码在 Arduino 上控制蜂鸣器:
```c++
int buzzerPin = 8; // 将蜂鸣器连接到数字引脚 8
void setup() {
pinMode(buzzerPin, OUTPUT); // 设置数字引脚 8 为输出模式
}
void loop() {
digitalWrite(buzzerPin, HIGH); // 输出高电平
delay(1000); // 延时 1 秒
digitalWrite(buzzerPin, LOW); // 输出低电平
delay(1000); // 延时 1 秒
}
```
这段代码会让蜂鸣器每隔 1 秒发出一次嘟声。
arduino无源蜂鸣器代码
以下是一个简单的Arduino无源蜂鸣器代码,可以让蜂鸣器正常发声:
```arduino
int buzzer = 8;
void setup() {
pinMode(buzzer, OUTPUT);
}
void loop() {
unsigned char i, j;
while (1) {
for (i = 0; i < 80; i++) {
digitalWrite(buzzer, HIGH);
delay(1);
digitalWrite(buzzer, LOW);
delay(1);
}
for (j = 0; j < 100; j++) {
digitalWrite(buzzer, HIGH);
delay(2);
digitalWrite(buzzer, LOW);
delay(2);
}
}
}
```
如果要让蜂鸣器的声音变大或者变小,可以给它加一个PWM,改变它的占空比,从而改变声音大小。
--相关问题--:
1. 如何用Arduino控制有源蜂鸣器发声?
2. 如何用电位器调节无源蜂鸣器发出不同的声音?
3.
阅读全文