Hogyan jelenítsek meg egy hőmérsékleti értéket egy 20x4-es LCD kijelzőn?

Jun 01, 2026Hagyjon üzenetet

Szia! 20x4-es LCD-kijelzők szállítójaként gyakran kérdeznek tőlem, hogyan jeleníthetek meg hőmérsékleti értéket ezeken a remek kis képernyőkön. Úgyhogy úgy gondoltam, összeállítom ezt a blogbejegyzést, hogy végigvezethessek az egész folyamaton.

16 * 4 Lcd Character Display20x2 Lcd Display Lcd Module

Először is beszéljünk egy kicsit a 20x4-es LCD kijelzőről. Ez egy nagyszerű választás sok projekthez, különösen akkor, ha megfelelő mennyiségű információt kell bemutatnia. A "20x4" azt jelenti, hogy soronként 20 karakterből és összesen 4 sorból áll. Ez rengeteg helyet biztosít nemcsak a hőmérséklet, hanem néhány további részlet, például mértékegység (Celsius vagy Fahrenheit) és esetleg időbélyeg megjelenítéséhez is.

Most, mielőtt belevágnánk a technikai dolgokba, gyorsan említsünk meg néhány további LCD-kijelzőt, amelyek szintén érdekelhetik. Ha valamivel kisebbet keresel, nálunk16x2 lcd kijelző. Ez egy klasszikus, soronként 16 karakterrel és 2 sorral. Aztán ott van a20x2 LCD kijelző, ami egy kicsit nagyobb szélességet biztosít, de még mindig csak 2 sort. És ha egy kicsit több magasságra vágyik, a16x4 lcd kijelzőszilárd lehetőség.

Rendben, vissza a 20x4-es LCD-hez és a hőmérséklet kijelzéséhez. Az első dolog, amire szüksége lesz, egy hőmérséklet-érzékelő. Rengeteg ilyen van, de a népszerű a DHT11 vagy a DHT22. Ezek az érzékelők viszonylag könnyen használhatók, és pontos hőmérsékleti értékeket tudnak adni.

Miután megkapta az érzékelőt, csatlakoztatnia kell a mikrokontrolleréhez. Feltételezem, hogy ehhez a példához Arduino-t használ, de az általános fogalmak más mikrokontrollerekre is vonatkoznak.

A hőmérséklet-érzékelő csatlakoztatása az Arduino-hoz

  • Hatalom: Csatlakoztassa a DHT érzékelő VCC érintkezőjét az Arduino 5 V-os érintkezőjéhez. Ez biztosítja az érzékelő működéséhez szükséges teljesítményt.
  • Föld: Csatlakoztassa az érzékelő GND érintkezőjét az Arduino GND érintkezőjéhez. Ezzel befejeződik az elektromos áramkör.
  • Adat: Csatlakoztassa az érzékelő adattűjét az Arduino egyik digitális érintkezőjéhez. Tegyük fel, hogy a 2-es érintkezőhöz csatlakoztatjuk.

A 20x4-es LCD csatlakoztatása az Arduino-hoz

  • Hatalom: Csatlakoztassa az LCD VSS érintkezőjét a GND-hez és a VDD érintkezőjét az 5 V-hoz.
  • Kontraszt: Csatlakoztassa a VO érintkezőt egy potenciométerhez. Ez lehetővé teszi a kijelző kontrasztjának beállítását, hogy tisztán lássa a karaktereket.
  • Vezérlőcsapok: Csatlakoztassa az RS érintkezőt a 12-es digitális érintkezőhöz, az EN-tűt a 11-es digitális érintkezőhöz és a D4-D7-tűket az 5-8-as digitális érintkezőkhöz. Ezek a tűk parancsok és adatok küldésére szolgálnak az LCD-re.

A kódex írása

Most, hogy minden csatlakoztatva van, ideje megírni a kódot. Íme egy alapvető példa:

#include <LiquidCrystal.h> #include <DHT.h> // Az LCD-könyvtár inicializálása az interfész tűinek számával LiquidCrystal lcd(12, 11, 5, 6, 7, 8); // DHT érzékelő inicializálása #define DHTPIN 2 #define DHTTYPE DHT11 DHT dht(DHTPIN, DHTTYPE); void setup() { // Az LCD oszlopok és sorok számának beállítása: lcd.begin(20, 4); // A DHT érzékelő indítása dht.begin(); } void loop() { // A hőmérséklet vagy a páratartalom leolvasása körülbelül 250 ezredmásodpercet vesz igénybe! // Az érzékelő leolvasott értékei is legfeljebb 2 másodpercesek lehetnek 'régi' (nagyon lassú érzékelő) float h = dht.readHumidity(); float t = dht.readTemperature(); // Ellenőrizze, hogy valamelyik olvasás sikertelen-e, és lépjen ki korábban (az újrapróbálkozáshoz). if (isnan(h) || isnan(t)) { lcd.setCursor(0, 0); lcd.print("Nem sikerült beolvasni a DHT érzékelőből!"); visszatérés; } // Hőmérséklet megjelenítése az LCD-n lcd.setCursor(0, 0); lcd.print("Hőmérséklet: "); lcd.print(t); lcd.print("C"); késleltetés (2000); }

Nézzük meg, mi történik ebben a kódban:

  • Könyvtárak: Beleértjük aLiquid Crystalkönyvtár az LCD vezérléséhez és aDHTkönyvtár a hőmérséklet-érzékelő olvasásához.
  • Inicializálás: Asetup()függvényében inicializáljuk az LCD-t a megfelelő számú oszloppal és sorral (20x4). A DHT érzékelőt is elindítjuk.
  • Az érzékelő leolvasása: Ahurok()funkciót, leolvassuk a páratartalmat és a hőmérsékletet a DHT érzékelőről. Ha a mért értékek érvénytelenek, hibaüzenetet jelenítünk meg az LCD-n.
  • A hőmérséklet megjelenítése: Ha a leolvasott értékek érvényesek, a kurzort az LCD-n az első sor elejére állítjuk, kinyomtatjuk a "Hőmérséklet: " szöveget, majd a hőmérséklet értéket és a " C" mértékegységet.
  • Késleltetés: A szenzor ismételt leolvasása előtt 2 másodperc késleltetést adunk hozzá. Ez elegendő időt biztosít az érzékelőnek a pontos mérésekhez.

További szempontok

  • Mértékegység átváltás: Ha Celsius helyett Fahrenheitben szeretné megjeleníteni a hőmérsékletet, használja a következő képletet:t = dht.readTemperature(true);Aigazparaméter megmondja aolvassa hőmérséklet ()funkció a hőmérséklet visszaállításához Fahrenheitben.
  • Hibakezelés: A fenti kódban csak hibaüzenetet jelenítünk meg, ha az érzékelő leolvasása érvénytelen. Hozzáadhat kifinomultabb hibakezelést, például megpróbálhatja néhányszor újra leolvasni az érzékelőt, mielőtt feladná.
  • Kijelző formázása: Játszhat a kijelző formázásával, hogy szebb legyen. Például hozzáadhat kitöltést a hőmérséklet értékéhez, hogy mindig ugyanannyi karaktert vegyen fel.

Következtetés

És ennyi! Most már tudja, hogyan jeleníthet meg egy hőmérsékleti értéket egy 20x4-es LCD kijelzőn Arduino és DHT érzékelő segítségével. Ez egy szórakoztató és hasznos projekt, amely többféleképpen bővíthető.

Ha érdeklődik 20x4-es LCD-kijelzők vagy bármely más LCD-termékünk vásárlása iránt, örömmel várjuk. Csak forduljon hozzánk, hogy beszélgetést kezdeményezzen konkrét igényeiről. Azért vagyunk itt, hogy segítsünk megtalálni a tökéletes megjelenítési megoldást projektjéhez.

Hivatkozások

  • Arduino dokumentáció
  • DHT érzékelő adatlap
  • LiquidCrystal Library dokumentáció