#include <DHT.h>
#define DHTPIN D7
#define DHTTYPE DHT22
#define LED_PIN D8
DHT dht(DHTPIN, DHTTYPE);
void setup()
{
Serial.begin(115200);
pinMode(LED_PIN, OUTPUT);
dht.begin();
Serial.println("STM32 DHT11 Temperature Monitoring");
Serial.println("-----------------------------------");
}
void loop()
{
float temperature = dht.readTemperature();
float humidity = dht.readHumidity();
if (isnan(temperature) || isnan(humidity))
{
Serial.println("DHT11 Sensor Error");
digitalWrite(LED_PIN, LOW);
delay(2000);
return;
}
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println(" °C");
Serial.print("Humidity: ");
Serial.print(humidity);
Serial.println(" %");
if (temperature > 32)
{
digitalWrite(LED_PIN, HIGH);
Serial.println("WARNING: High Temperature!");
}
else
{
digitalWrite(LED_PIN, LOW);
Serial.println("Temperature Normal");
}
Serial.println("-------------------------");
delay(2000);
}