Obsah:
- Krok 1: Grafický modul LCD 128 x 128 RGB TFT ILI 9163C
- Krok 2: Senzor vlhkosti a teploty AM2302 DHT22
- Krok 3: Okruh
- Krok 4: Zostavenie
- Krok 5: Knižnica
- Krok 6: Kód
- Krok 7: Niektoré ďalšie zaujímavé funkcie
Video: Digitálny teplomer ESP8266 s LCD displejom: 7 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 12:00
Dnes vám ukážem, ako používať TFT LCD displej na ESP8266 NodeMCU na zobrazenie údajov o teplote a vlhkosti pre dané prostredie v reálnom čase. Uvádzam príklad použitia displeja s DHT22, čo je ukazovateľ teploty a vlhkosti. V tomto videu konkrétne používam kompaktný displej pre náš digitálny teplomer, ktorý je grafický a umožňuje monitorovanie na samotnom systéme. Cieľom dnešnej doby je teda zoznámiť sa s ovládaním displeja z tekutých kryštálov pomocou ESP8266.
Krok 1: Grafický modul LCD 128 x 128 RGB TFT ILI 9163C
Displej, ktorý v tomto projekte používame, má 128 x 128 pixelov. 0, 0 je v ľavom hornom rohu a tento model má funkcie textovej aj grafickej tlače, ktorými sa budeme zaoberať neskôr.
Krok 2: Senzor vlhkosti a teploty AM2302 DHT22
V našej zostave použijeme AM2302 DHT22, čo je snímač, ktorý sa mi veľmi páči, pretože je veľmi presný.
Krok 3: Okruh
V projekte máme ESP8266, ktorý je už naprogramovaný a používa napájanie USB. DHT22 je pripojený k dátam a výsuvný odpor k ESP8266, ktorý ovláda LCD displej.
Krok 4: Zostavenie
Tu máme elektrický diagram našej zostavy, ktorý ukazuje NodeMCU, senzor a displej. Pamätajte si, že toto je sériový displej i2c, ktorý sa používa jednoduchšie, pretože má viac pinov.
Krok 5: Knižnica
Keďže sa chystáme programovať displej s jazykom Arduino C, potrebujeme knižnicu DHT22, ako aj LCD.
Najprv pridajte nasledujúcu knižnicu „Knižnica snímačov DHT“na komunikáciu so snímačom vlhkosti a teploty.
Jednoducho vstúpte do „Náčrtu >> Zahrnúť knižnice >> Spravovať knižnice …"
Teraz pridajte nasledujúcu knižnicu „Adafruit-GFX-Library-master“.
Jednoducho vstúpte do „Náčrtu >> Zahrnúť knižnice >> Spravovať knižnice …"
Pridajte tiež knižnicu "TFT_ILI9163C" na komunikáciu s grafickým modulom LCD.
Prejdite na odkaz (((((((((https://github.com/sumotoy/TFT_ILI9163C))))))) a stiahnite si knižnicu.
Rozbaľte súbor a vložte ho do priečinka s knižnicami v Arduino IDE.
C: / Programové súbory (x86) / Arduino / knižnice
Krok 6: Kód
Najprv pridáme knižnice, ktoré budú použité v našom kóde.
#include // využitie paraboly comunicar com o modulo LCD#include // využitie para comunicacom com senzor deid deid de temperatura
Definície
Ďalej uvidíme premenné, ktoré budeme používať počas programu, a inštanciu objektov.
#define DHTPIN D6 // pino que conectaremos o sensor DHT22#define DHTTYPE DHT22 // DHT22 é o tipo do sensor que utilizaremos (importante para o o construtor) DHT dht (DHTPIN, DHTTYPE); // konštruktér používa viac ako jeden spoločný snímač alebo snímač // Definície farieb #definovať ČIERNA 0x0000 #definovať MODRÁ 0x001F #definovať ČERVENÁ 0xF800 #definovať ZELENÁ 0x07E0 #definovať KYAN 0x07FF #definovať MAGENTA 0xF81F # definujte _CS D1 // pino que conectaremos o CS do módulo LCD #define _DC D4 // pino que conectaremos o RS do módulo LCD TFT_ILI9163C display = TFT_ILI9163C (_ CS, _DC); // konštrutor do objeto que utilizaremos para se comunicar com o módulo LCD
Nastaviť
Vo funkcii setup () inicializujeme premennú "dht", ktorá je zodpovedná za komunikáciu so snímačom vlhkosti a teplotou. Inicializujeme tiež premennú "zobrazenie", ktorá slúži na komunikáciu s LCD modulom.
Tiež nakonfigurujeme objekt tak, aby začal kresliť na obrazovku.
void setup (void) {dht.begin (); // inicialização para se comunicar com o sensor display.begin (); // inicialização para comunicar com o módulo LCD display.clearScreen (); // limpa a tela, removeendo todos os desenhos display.fillScreen (BLACK); // pinta a tela toda de preto display.setTextSize (2); // configura o tamanho do texto com o tamanho 2 display.setTextColor (ZELENÁ); // konfigurácia a text do zeleného displeja.setCursor (5, 10); // pozícia alebo kurzor parašutistov a konkrétnych parametrov (x, y) display.print ("TEMPERATUR"); // escreve em tela display.setCursor (22, 70); // reposiciona o cursor display.print ("UMIDADE"); // escreve em tela display.setTextColor (WHITE); // konfigurácia a spracovanie textu s oneskorením (časť agora) oneskorenie (1000); // espera de 1 segundo}
Slučka
Vo funkcii loop () získame vlhkosť a teploty načítané snímačom a zapísané na obrazovku v konkrétnom mieste. V každom intervale 5 sekúnd sa zo senzora odčíta hodnota a zapíše sa na obrazovku.
prázdna slučka () {int h = dht.readHumidity (); // faz a leitura da umidade do sensor int t = dht.readTemperature (); // senzor teploty a citlivosti // ako 2 úrovne využívajúce metódu „fillRect“, ktorá obsahuje niekoľko základných teplôt a teplôt, apararemos valor atual para para escrever novamente atualizado. display.fillRect (5, 32, 120, 20, ČIERNY); // fillRect (x, y, šírka, výška, farba); display.fillRect (5, 92, 120, 20, ČIERNY); display.setCursor (40, 35); // umiestnenie kurzora para escrever display.print (t); // escreve a temperatura em tela display.print ((char) 247); // escreve o símbolo de grau ° através de código display.print ("C"); // farba o “C” para indikuje que é graus Celcius display.setCursor (40, 95); // umiestnenie kurzora para escrever display.print (h); // escreve a umidade em tela display.print ("%"); // escreve o símbolo de “porcentagem” para indicater a umidade delay (5000); }
Krok 7: Niektoré ďalšie zaujímavé funkcie
// Otočí obsah obrazovky (parametre 0, 1, 2 alebo 3)
display.setRotation (uint8_t);
// obráti farby displeja (urobí negatív)
display.invertDisplay (boolean);
// Nakreslí jeden pixel na obrazovku v polohe (x, y)
display.drawPixel (x, y, color);
// Nakreslí v polohe zvislú čiaru
display.drawFastVLine (x, y, šírka, farba);
// Nakreslí zvislú čiaru na určenom mieste
display.drawFastHLine (x, y, šírka, farba);
// Nakreslí vodorovnú čiaru na určenom mieste
display.drawRect (x, y, šírka, výška, farba);
// Nakreslí kruh na určenom mieste
display.drawCircle (x, y, polomer, farba);
Odporúča:
Digitálny teplomer LED RPi: 6 krokov (s obrázkami)
Digitálny teplomer RPi LED: Raspbian OS Zistite, ako som vyrobil tento digitálny LED teplomer s Raspberry Pi Zero W, LED pásikom, OLED displejom a vlastným PCB. Automaticky cykluje podľa zoznamu miest a zobrazuje teplotu na OLED displej a LED diódy. Ale
Digitálny teplomer s Arduino a DS18B20: 7 krokov
Digitálny teplomer s Arduino a DS18B20: Jednoducho vytvorte digitálny teplomer, ktorý vám na LCD obrazovke môže oznámiť aktuálnu izbovú teplotu. Toto je projekt pre začiatočníkov. Potrebné zariadenie: 1. Arduino UNO R3 2. Teplotný snímač DS18B20. 3. LCD displej 16X2. 4. Pripojovacie vodiče. 5.
Digitálny teplomer využívajúci NodeMCU a LM35: 5 krokov
Digitálny teplomer pomocou NodeMCU a LM35: Vytvorte si vlastný digitálny teplomer a monitorujte teplotu cez internet odkiaľkoľvek. Tento návod je základný pre to, aby ste sa začali baviť s IoT. Budeme prepojiť snímač teploty LM35 s NodeMCU 1.0 (ESP-12E). LM35 je snímač teploty
Digitálny teplomer Acme W/ DS18B20 sonda teploty a I2C LCD: 5 krokov
Digitálny teplomer Acme W/ DS18B20 Temp Probe a I2C LCD: toto je veľmi jednoduchý projekt, ktorý nestojí veľa a nezaberie veľa času. Vložil som to do škatule Amazon, pretože to tam bolo, ale toto bolo možné namontovať takmer do čohokoľvek
Arduino od začiatku - digitálny teplomer: 7 krokov (s obrázkami)
Arduino From Scratch - digitálny teplomer: Rád robím projekty s Arduinos, ale za 30 dolárov za kus môžu byť vaše projekty drahé. Chcem vám teda ukázať, ako si môžete vytvoriť vlastné Arduino od začiatku a ušetriť tým peniaze. Vyrobte si vlastné Arduino za približne 8 dolárov. Za tento poučiteľný