DHT11/DHT22 — Wetterstation Anzeige auf einem LCD

Lesezeit: 3 Minuten

Seite als PDF

Die mit dem Tem­per­atursen­sor DHT gemesse­nen Werte sollen auf einem LCD angezeigt wer­den.

So sieht es aus:

Schließe das LCD an:

LCD

Nor­maler­weise wäre eine kom­plexe Verk­a­belung zum Betrieb eines LCDs nötig. Der ⇒I2C-Bus regelt über einen eige­nen Mikro­prozes­sor die Kom­mu­nika­tion der Daten­leitun­gen untere­inan­der. Es wer­den deshalb nur vier Anschlüsse benötigt.

Die Hel­ligkeit kann mit einem Poten­tiome­ter auf der Rück­seite des LCDs eingestellt wer­den.

Beispiele für DHT11/DHT22 Sen­soren

Die Pin­bele­gung kann sich von der hier gezeigten unter­schei­den. Achte auf die Beschrif­tung des Sen­sors!

Benötigte Bauteile:

  • Tem­per­atursen­sor DHT11/DHT22
  • 4‑zeiliges LCD mit I²C-Schnittstelle
  • Leitungs­drähte

Schaltpläne

(Fahre mit der Maus über das Bild, um die Beze­ich­nun­gen der Bauteile zu sehen)

Arduino UNO

Wemos D1 Mini

ESP32-Wroom

Board installieren:

Benötigte Bib­lio­theken:

Im Kopf des Pro­gramms wer­den die benötigten Bib­lio­theken einge­bun­den und der Sen­sor definiert. Der Kopfteil sieht je nach ver­wen­de­ten Board unter­schiedlich aus.

Arduino UNO

#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); 

Wemos D1 Mini

#include "DHT.h"
#include "LCDIC2.h"

// Pin des DHT-Sensors
int SENSOR_DHT = D3;

// 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);

ESP32-Wroom

#include "DHT.h"
#include "LCDIC2.h"

// Pin des DHT-Sensors
int SENSOR_DHT = 19;

// 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 set­up-Teil wird das LCD ges­tartet:

Im loop-Teil wer­den die Vari­ablen definiert, in denen die gemesse­nen Werte für Tem­per­atur und Luft­feuchtigkeit gespe­ichert wer­den. Anschließend wer­den die Mess­werte ermit­telt.
Die Mess­werte enthal­ten als Dez­i­mal­trennze­ichen einen Punkt, er wird mit replace durch ein Kom­ma erset­zt.
Zum Schluss musst du noch mit lcd.setCursor(); und lcd.print(); die Aus­gabe auf dem LCD erstellen.


Startseite
Aufgaben A-Z
Suchen
Downloads
Fehlermeldungen
Seite als PDF

Verwandte Anleitungen:

    let­zte Aktu­al­isierung: Okt. 24, 2025 @ 12:36