Sisukord:
- Samm: LCD graafikamoodul 128x128 RGB TFT ILI 9163C
- 2. samm: niiskus- ja temperatuuriandur AM2302 DHT22
- 3. samm: ahel
- 4. samm: kokkupanek
- Samm: raamatukogu
- 6. samm: kood
- Samm: mõned muud huvitavad funktsioonid
Video: ESP8266 LCD -ekraaniga digitaalne termomeeter: 7 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
Täna näitan teile, kuidas kasutada EST8266 NodeMCU TFT LCD-ekraani temperatuuri ja niiskuse andmete kuvamiseks antud reaalajas keskkonnas. Toon näite ekraani kasutamisest koos DHT22 -ga, mis on temperatuuri ja niiskuse mõõtur. Selles videos kasutan konkreetselt meie digitaalse termomeetri jaoks kompaktset ekraani, mis on graafiline ja võimaldab jälgida süsteemi ennast. Seetõttu on tänase päeva eesmärk õppida tundma vedelkristallekraani käsitsemist ESP8266 abil.
Samm: LCD graafikamoodul 128x128 RGB TFT ILI 9163C
Selles projektis kasutatav ekraan on 128x128 pikslit. 0, 0 on vasakus ülanurgas ja sellel mudelil on nii teksti- kui ka graafilise printimise funktsioonid, millega me hiljem tegeleme.
2. samm: niiskus- ja temperatuuriandur AM2302 DHT22
Kasutame oma koostes AM2302 DHT22, mis on mulle väga meeldiv andur, kuna see on väga täpne.
3. samm: ahel
Projektis on meil ESP8266, mis on juba programmeeritud ja kasutab USB -toiteallikat. DHT22 on ühendatud andmetega ja tõmbetakistus ESP8266-ga, mis juhib LCD-ekraani.
4. samm: kokkupanek
Siin on meie koostamise elektriskeem, mis näitab NodeMCU -d, andurit ja ekraani. Pidage meeles, et see on jadakuva i2c, mida on lihtsam kasutada, kuna sellel on rohkem tihvte.
Samm: raamatukogu
Kuna me kavatseme ekraani programmeerida Arduino C keelega, vajame DHT22 raamatukogu ja LCD -d.
Kõigepealt lisage niiskus- ja temperatuurianduriga suhtlemiseks järgmine teek "DHT -andmekogu".
Avage lihtsalt jaotis "Visand >> Kaasa raamatukogud >> Raamatukogude haldamine …"
Nüüd lisage järgmine raamatukogu "Adafruit-GFX-Library-master".
Avage lihtsalt jaotis "Visand >> Kaasa raamatukogud >> Raamatukogude haldamine …"
Lisage LCD -graafikamooduliga suhtlemiseks ka teek "TFT_ILI9163C".
Avage link ((((((((https://github.com/sumotoy/TFT_ILI9163C))))) ja laadige kogu alla.
Pakkige fail lahti ja kleepige see Arduino IDE raamatukogude kausta.
C: / Program Files (x86) / Arduino / libraries
6. samm: kood
Kõigepealt lisame teegid, mida meie koodis kasutatakse.
#include // utilizada para se comunicar com o modeulo LCD#include // utilizada para se comunicar com o sensor de deumid and Temperatura
Mõisted
Allpool näeme programmi ajal kasutatavaid muutujaid ja objektide eksemplare.
#define DHTPIN D6 // pino que conectaremos o sensor DHT22#define DHTTYPE DHT22 // DHT22 é o tipo do sensor que utilizaremos (oluline parameeter) DHT dht (DHTPIN, DHTTYPE); // construtor do objeto que utilizaremos para se comunicar com o sensor // Värvimääratlused #define BLACK 0x0000 #define BLUE 0x001F #define RED 0xF800 #define GREEN 0x07E0 #define CYAN 0x07FF #define MAGENTA 0xFF ##define define _CS D1 // pino que conectaremos o CS do modeulo LCD #define _DC D4 // pino que conectaremos o RS do LCD LCD TFT_ILI9163C display = TFT_ILI9163C (_ CS, _DC); // construtor do objeto que utilizaremos para se comunicar com or modeulo LCD
Seadistamine
Funktsioonis setup () lähtestame muutuja "dht", mis vastutab suhtluse eest niiskusanduri ja temperatuuriga. Samuti lähtestame muutuja "display", mida kasutatakse LCD -mooduliga suhtlemiseks.
Samuti seadistame objekti ekraanile joonistama.
tühine seadistus (tühine) {dht.begin (); // inicialização para se comunicar com o sensor display.begin (); // inicialização para se comunicar com või moodulo LCD display.clearScreen (); // limpa a tela, removeendo todos os desenhos display.fillScreen (MUST); // pinta a tela toda de preto display.setTextSize (2); // configura o tamanho do texto com o tamanho 2 display.setTextColor (GREEN); // seadistage korrektne tekstinäidik. displayCursor (5, 10); // positsioon või kursor parameeter ja escrita a partir do (x, y) display.print ("TEMPERATUR"); // escreve em tela display.setCursor (22, 70); // reposiciona või kursori kuva.print ("UMIDADE"); // escreve em tela display.setTextColor (VALGE); // configura a cor do texto como branco (partir de agora) delay (1000); // espera de 1 segundo}
Loop
Funktsiooni loop () abil toome välja niiskuse ja temperatuurid, mida andur loeb ja ekraanile konkreetsesse kohta kirjutab. Iga 5 -sekundilise intervalliga loetakse väärtus andurilt ja kirjutatakse ekraanile.
void loop () {int h = dht.readHumidity (); // faz a leitura da umidade do sensor int t = dht.readTemperature (); // faz a leitura da temperatura do sensor // as 2 linhas seguintes utilizando o método “fillRect”, são para fazer a limpeza do local onde escreveremos a umidade e a temperatura, apagaremos o valor atual para escrever novamente atualizado. display.fillRect (5, 32, 120, 20, MUST); // fillRect (x, y, laius, kõrgus, värv); display.fillRect (5, 92, 120, 20, MUST); display.setCursor (40, 35); // reposiciona või kursori 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"); // coloca o “C” para indicar que é graus Celcius display.setCursor (40, 95); // reposiciona või kursori escrever display.print (h); // escreve umidade em tela display.print ("%"); // escreve o símbolo de “porcentagem”, mis näitab umidade delay (5000); }
Samm: mõned muud huvitavad funktsioonid
// Pöörab ekraani sisu (parameetrid 0, 1, 2 või 3)
display.setRotation (uint8_t);
// Pöörab ekraani värve (muudab negatiivse)
display.invertDisplay (boolean);
// Joonistab ekraanile ühe piksli asukohas (x, y)
display.drawPixel (x, y, värv);
// Joonistab asendisse vertikaalse joone
display.drawFastVLine (x, y, laius, värv);
// Joonistab määratud asendisse vertikaalse joone
display.drawFastHLine (x, y, laius, värv);
// Joonistab määratud asendisse horisontaaljoone
display.drawRect (x, y, laius, kõrgus, värv);
// Joonistab määratud asukohta ringi
display.drawCircle (x, y, raadius, värv);
Soovitan:
Digitaalne RPi LED termomeeter: 6 sammu (piltidega)
Digitaalne RPi LED -termomeeter: Raspbian OS Lugege, kuidas ma selle digitaalse LED -termomeetri koos Raspberry Pi Zero W, LED -riba, OLED -ekraani ja kohandatud trükkplaadiga tegin. See lülitab automaatselt linnade nimekirja tsüklitesse ja kuvab OLED -i temperatuuri ekraan ja LED -id. Aga
Arduino põhine digitaalne termomeeter: 3 sammu
Arduino -põhine digitaalne termomeeter: Selles projektis on loodud Arduino -põhine digitaalne termomeeter, mida saab kasutada ruumi temperatuuri analüüsimiseks. Termomeetrit kasutatakse tavaliselt temperatuuri mõõtmisvahendina. Mõõtmiseks võib kasutada erinevaid põhimõtteid
Digitaalne termomeeter DHT11, kasutades ESP8266: 4 sammu
Digitaalne termomeeter DHT11, kasutades ESP8266: Eelmises artiklis käsitlesin juba DH11 -d ja selle kuvamist väljundseadmetes, nagu 7 -segmendiline, LCD -ekraan, seeriamonitor ja RGB -rõngas. Ja selles artiklis näitan teile, kuidas temperatuuri ja niiskust jälgida mobiiltelefoni brauseri kasutamine
Arduino -põhine mittekontaktne infrapuna -termomeeter - IR -põhine termomeeter Arduino abil: 4 sammu
Arduino -põhine mittekontaktne infrapuna -termomeeter | IR -põhine termomeeter Arduino abil: Tere, selles juhendis olevad poisid, teeme arduino abil kontaktivaba termomeetri. Kuna mõnikord on vedeliku/tahke aine temperatuur liiga kõrge või madal, siis on sellega raske kontakti saada ja seda lugeda temperatuur sellises olukorras
Acme digitaalne termomeeter W/ DS18B20 Temp Probe ja I2C LCD: 5 sammu
Acme digitaalne termomeeter W/ DS18B20 Temp Probe ja I2C LCD: see on väga lihtne projekt, mis ei maksa palju ega võta palju aega. Panin selle Amazoni kasti, sest see oli seal, kuid seda saab paigaldada peaaegu igasse kohta