
Ziel des Projekts
Die mit dem Temperatursensor DHT gemessenen Werte sollen auf einem LCD angezeigt werden.

Die Hardware
LCD


Das LCD wird über die Pins SDA und SCL verbunden.

Die Helligkeit kann mit einem Potentiometer auf der Rückseite des LCDs eingestellt werden.
DHT-Sensor
Beispiele für DHT11/DHT22 Sensoren

Die Pinbelegung kann sich von der hier gezeigten unterscheiden. Achte auf die Beschriftung des Sensors!
Benötigte Bauteile
- Temperatursensor DHT11/DHT22
- 4-zeiliges LCD mit I²C-Schnittstelle
- Leitungsdrähte
Der Schaltplan
(Fahre mit der Maus über das Bild, um die Bezeichnungen der Bauteile zu sehen)
Benötigte Bibliotheken
![]() |
![]() |
Das Programm
Im Kopf des Programms werden die benötigten Bibliotheken eingebunden und der Sensor definiert.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
#include “DHT.h” #include “LCDIC2.h” // Pin des DHT-Sensors int SENSOR_DHT = 7; // Sensortyp festlegen // DHT22 oder DHT11 #define SensorTyp DHT22 // Sensor DHT einen Namen zuweisen DHT dht(SENSOR_DHT, SensorTyp); // LCD einen Namen zuweisen (lcd) LCDIC2 lcd(0x27, 20, 4); |
Im setup-Teil wird das LCD gestartet:
|
1 2 3 4 5 6 7 8 9 |
void setup() { // LCD einschalten lcd.begin(); // Cursor "verstecken" lcd.setCursor(false); // Sensor DHT starten dht.begin(); } |
Im loop-Teil werden die Variablen definiert, in denen die gemessenen Werte für Temperatur und Luftfeuchtigkeit gespeichert werden. Anschließend werden die Messwerte ermittelt.
Die Messwerte enthalten als Dezimaltrennzeichen einen Punkt, er wird mit replace durch ein Komma ersetzt.
Zum Schluss musst du noch mit lcd.setCursor(); und lcd.print(); die Ausgabe auf dem LCD erstellen.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
void loop() { // Daten lesen float Temperatur = dht.readTemperature(); float Luftfeuchtigkeit = dht.readHumidity(); // . durch , ersetzen String AnzeigeTemperatur = String(Temperatur); AnzeigeTemperatur.replace(".", ","); String AnzeigeLuftfeuchtigkeit = String(Luftfeuchtigkeit); AnzeigeLuftfeuchtigkeit.replace(".", ","); // Anzeige LCD lcd.clear(); lcd.setCursor(0, 0); lcd.print("Temperatur: "); lcd.setCursor(0, 1); // \337 -> ° lcd.print(AnzeigeTemperatur + " \337C"); lcd.setCursor(0, 2); lcd.print("Luftfeuchtigkeit: "); lcd.setCursor(0, 3); lcd.print(AnzeigeLuftfeuchtigkeit + " %"); // mindestens 2 Sekunden Pause delay(2500); } |
Ähnliche Projekte
- Analoge Uhr mit TFT-Shield und BME280
- Messwerte des BME280-Sensors auf LCD anzeigen
- Messwerte des DHT-Sensors und Zeit auf TFT anzeigen
- Durchschnittstemperatur verschiedener Messungen des DHT-Sensors berechnen und auf einem OLED-Display anzeigen
- Messwerte DHT-Sensor auf SD-Karte im CSV-Format speichern
- Messwerte DHT-Sensor mit Bluetooth-Modul an Smartphone übermitteln und auf SD-Karte speichern
- Messwerte des DHT-Sensor mit Ethernet-Shield im Webbrowser anzeigen
- Messwerte DHT-Sensor auf einem LCD anzeigen
- Messwerte des DHT-Sensors mit Arduino WiFi im Webbrowser anzeigen
- ESP-01 Zeit und Messwerte DHT/BME280 auf einem LCD und im Browser anzeigen
Letzte Aktualisierung:








