代码:
int MIC = A0; // 麦克风引脚连接到A0
int LED = 3; // LED 正极连接到数字接口3
void setup() {
Serial.begin(9600);
pinMode(MIC, INPUT);
pinMode(LED, OUTPUT);
}
void loop() {
int soundValue = analogRead(MIC);
// 映射声音传感器输出到估计的分贝范围(仅作示例,需要根据实际情况调整)
float db_value = map(soundValue, 0, 1023, 30, 90);
// 输出分贝值
// Serial.print("Decibel: ");
Serial.println(db_value);
// 根据分贝值控制LED
int up1 = 66;
int up2 = 62;
int down1 = 60;
int down2 = 50;
// 检测高声音
if (db_value >= up2 && db_value <= up1) {
Serial.println("1"); // 输出高声音数据1
digitalWrite(LED, HIGH); // 点亮LED
}
// 检测低声音
if (db_value >= down2 && db_value <= down1) {
Serial.println("0"); // 输出高声音数据2
digitalWrite(LED, LOW); // 点亮LED
}
delay(500);
}
效果图:
1、串口监视器输出
2、串口绘图器显示