#include #define DHTPIN D0 #define DHTTYPE DHT11 #define BUZZER_PIN D1 DHT dht(DHTPIN, DHTTYPE); void setup() { Serial.begin(115200); dht.begin(); pinMode(BUZZER_PIN, OUTPUT); Serial.println("System Initialized: DHT11 & Buzzer only."); } void loop() { float h = dht.readHumidity(); float t = dht.readTemperature(); if (isnan(h) || isnan(t)) { Serial.println("Sensor Error!"); return; } // 串口输出,方便你截图放进文档证明数据采集正常 Serial.print("Humidity: "); Serial.print(h); Serial.print("% Temp: "); Serial.print(t); Serial.println("C"); // 逻辑:温度 > 30 或 湿度 > 100% 报警 if (t > 30.0 || h > 100.0) { tone(BUZZER_PIN, 1000); // 输出 1000Hz 的 PWM 方波 } else { noTone(BUZZER_PIN); // 停止输出 } delay(2000); // DHT11 需要较长间隔 }