Code-Erklärung hinzugefügt

Luca7255 2024-03-20 17:10:01 +00:00
parent 314f394a5c
commit 16c854b859
1 changed files with 119 additions and 0 deletions

119
Code-Erkl%C3%A4rung.-.md Normal file

@ -0,0 +1,119 @@
```
#include "ESPAsyncWebServer.h"
#include <Arduino.h>
#include <DHT.h>
#include <LiquidCrystal_I2C.h>
#include "WiFi.h"
// Definiere die Pins für den DHT-Sensor und den Piezo-Lautsprecher
const int DHT_PIN = 4;
const int PIEZO_PIN = 17;
// Definiere die Pins für die LEDs
const int LEDGREEN_PIN = 12;
const int LEDYELLOW_PIN = 32;
const int LEDRED_PIN = 26;
// Definiere den Pin für die Hintergrundbeleuchtung des LCDs
const int LEDWH_PIN = 13;
// Definiere SSID und Passwort für die WLAN-Verbindung
const char* ssid ="";
const char* password="";
// Erstelle einen AsyncWebServer auf Port 80
AsyncWebServer server(80);
// Initialisiere den vorherigen Rating-Wert auf -1
int prevRating = -1;
// Initialisiere den DHT-Sensor mit dem angegebenen Pin
DHT dht(DHT_PIN, DHT11);
// Funktion zum Lesen der Temperatur vom DHT-Sensor
String readDHTTemperature() {
float t = dht.readTemperature();
if (isnan(t)) {
Serial.println("Fehler beim Lesen des DHT-Sensors!");
return "--";
}
else {
Serial.println(t);
return String(t);
}
}
// Funktion zum Lesen der Luftfeuchtigkeit vom DHT-Sensor
String readDHTHumidity() {
float h = dht.readHumidity();
if (isnan(h)) {
Serial.println("Fehler beim Lesen des DHT-Sensors!");
return "--";
}
else {
Serial.println(h);
return String(h);
}
}
// HTML-Seite mit Platzhaltern für Temperatur und Luftfeuchtigkeit
const char index_html[] PROGMEM = R"rawliteral(
<!DOCTYPE HTML><html>
<head>
<!-- CSS-Stile für die HTML-Seite -->
</head>
<body>
<h2>ESP32 DHT</h2>
<p>
<!-- Temperaturanzeige -->
</p>
<p>
<!-- Luftfeuchtigkeitsanzeige -->
</p>
</body>
<script>
// JavaScript-Code für die Aktualisierung der Sensorwerte
</script>
</html>)rawliteral";
// Funktion zum Ersetzen der Platzhalter in der HTML-Seite mit den aktuellen Sensordaten
String processor(const String& var){
if(var == "TEMPERATURE"){
return readDHTTemperature();
}
else if(var == "HUMIDITY"){
return readDHTHumidity();
}
return String();
}
// Initialisiere ein LiquidCrystal-Objekt für das LCD
LiquidCrystal_I2C lcd(0x27, 16, 2);
float temp;
float humid;
// Funktion zur Wiedergabe eines Warnsignals
void playWarnTone() {
// Piezo-Lautsprecher wird kurz aktiviert
}
// Funktion zum Ausschalten aller LEDs
void OFFLEDS() {
// Alle LEDs werden ausgeschaltet
}
// Funktion zur Aktualisierung des LCDs mit den aktuellen Sensordaten
void UpdateLCD() {
// LCD wird aktualisiert
}
void setup() {
// Initialisierungen und Konfigurationen werden durchgeführt
}
void loop() {
// Sensordaten werden gelesen und verarbeitet
}
```