本次测是目的是检测蜂鸣器以及接近传感器的好坏,所以使用什么开发板是无所谓的。作为习惯,依旧使用ESP8266在Arduino下测试。
接线方法:

代码:
/**
* 使用无源蜂鸣器发音
* 发1,2,3,4,5,6,7七个音符
*/
const int buzzerPin = 5; // D1;
// 音调频率定义
#define NOTE_C4 262
#define NOTE_D4 294
#define NOTE_E4 330
#define NOTE_F4 349
#define NOTE_G4 392
#define NOTE_A4 440
#define NOTE_B4 494
#define NOTE_C5 523
void setup() {
pinMode(buzzerPin, OUTPUT);
Serial.begin(115200);
Serial.println("无源蜂鸣器音调测试");
}
void loop() {
// 播放简单旋律
int melody[] = {
NOTE_C4, NOTE_D4, NOTE_E4, NOTE_F4, NOTE_G4, NOTE_A4, NOTE_B4, NOTE_C5
};
int noteDuration = 500; // 每个音符持续时间
for (int i = 0; i < 8; i++) {
tone(buzzerPin, melody[i], noteDuration);
Serial.print("播放音调: ");
Serial.println(melody[i]);
delay(noteDuration + 50); // 音符间短暂停顿
}
delay(2000); // 等待2秒后重复
}很简单,发出1,2,3,4,5,6,7, 更高一阶的1。
当时用磁铁靠接磁感应接近传感器时,可以听到无源蜂鸣器发出正常的那几个音调,证明两个模块都没有问题。
我要赚赏金
