Mündəricat:
- Addım 1: LCD Qrafik Modulu 128x128 RGB TFT ILI 9163C
- Addım 2: Rütubət və Temperatur Sensoru AM2302 DHT22
- Addım 3: Dövrə
- Addım 4: Montaj
- Addım 5: Kitabxana
- Addım 6: Kod
- Addım 7: Bəzi digər maraqlı funksiyalar
Video: LCD Ekranlı ESP8266 Rəqəmsal Termometr: 7 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:47
Bu gün sizə ESP8266 NodeMCU-da bir TFT LCD ekranın necə istifadə ediləcəyini göstərəcəyəm. İstilik və rütubət göstəricisi olan DHT22 ilə ekranın istifadəsinə bir nümunə verirəm. Bu videoda, xüsusi olaraq, rəqəmsal termometrimiz üçün qrafik və sistemin özündə izləməyə imkan verən kompakt bir ekran istifadə edirəm. Bu günün məqsədi, ESP8266 istifadə edərək maye kristal ekranın işlənməsini öyrənməkdir.
Addım 1: LCD Qrafik Modulu 128x128 RGB TFT ILI 9163C
Bu layihədə istifadə etdiyimiz ekran 128x128 pikseldir. 0, 0 yuxarı sol küncdədir və bu modeldə həm mətn, həm də qrafik çap funksiyaları var ki, bunları daha sonra müzakirə edəcəyik.
Addım 2: Rütubət və Temperatur Sensoru AM2302 DHT22
Çox dəqiq olduğu üçün çox bəyəndiyim bir sensor olan AM2302 DHT22 -dən istifadə edəcəyik.
Addım 3: Dövrə
Layihədə, artıq proqramlaşdırılmış və USB gücünü istifadə edən bir ESP8266 var. DHT22, Məlumat və çəkmə müqavimətini LCD ekranı idarə edən ESP8266 ilə əlaqələndirir.
Addım 4: Montaj
Burada, NodeMCU, sensoru və ekranı göstərən montajımızın elektrik diaqramı var. Unutmayın ki, bu daha çox sancağa malik olduğu üçün istifadəsi daha asan olan i2c seriyalı ekrandır.
Addım 5: Kitabxana
Ekranı Arduino C dili ilə proqramlaşdıracağımız üçün DHT22 kitabxanasına və LCD -yə ehtiyacımız var.
Əvvəlcə rütubət və temperatur sensoru ilə əlaqə yaratmaq üçün aşağıdakı "DHT sensor kitabxanası" kitabxanasını əlavə edin.
Sadəcə "Sketch >> Kitabxanaları Daxil Et >> Kitabxanaları İdarə et …" bölməsinə daxil olun.
İndi, "Adafruit-GFX-Library-master" kitabxanasını əlavə edin.
Sadəcə "Sketch >> Kitabxanaları Daxil Et >> Kitabxanaları İdarə et …" bölməsinə daxil olun.
Ayrıca, LCD qrafik modulu ilə əlaqə üçün "TFT_ILI9163C" kitabxanasını əlavə edin.
Linkə daxil olun ((((((((https://github.com/sumotoy/TFT_ILI9163C))))))) və kitabxananı yükləyin.
Faylı açın və Arduino IDE kitabxana qovluğuna yapışdırın.
C: / Proqram Faylları (x86) / Arduino / kitabxanaları
Addım 6: Kod
Əvvəlcə kodumuzda istifadə ediləcək kitabxanaları əlavə edək.
#Daxil edin /komunikasiya etmək üçün LCD -ni istifadə edin#daxildir // komunikatorun istiliyi və istiliyi üçün istifadə edin
Təriflər
Proqram zamanı istifadə edəcəyimiz dəyişənləri və obyektlərin nümunəsini aşağıda görəcəyik.
#DHTPIN D6 təyin edin // DHT22 sensoru yoxlayın#DHTTYPE DHT22 təyin edin // DHT22 və ya sensoru istifadə edin (qurucu üçün vacib) DHT dht (DHTPIN, DHTTYPE); // konstruktor, komunik və ya sensorlar üçün // rəng anlayışları #QARA 0x0000 #MAVİ təyin 0x001F #QIRMIZI 0xF800 təyin et #YEŞİL 0x07E0 #Cefan 0x07FF #DefineFineFEFFEFFEFFE _CS D1 müəyyən etmək // LCD ekranını təyin etmək #Decine _DC D4 // müəyyən etmək üçün LCD ekran TFT_ILI9163C ekran = TFT_ILI9163C (_ CS, _DC); // LCD qurmaq üçün istifadəçi ilə əlaqə qurun
Qurmaq
Setup () funksiyasında rütubət sensoru və temperaturla ünsiyyətdən məsul olan "dht" dəyişənini işə salırıq. Həmçinin LCD modulu ilə əlaqə yaratmaq üçün istifadə olunan "ekran" dəyişənini işə salacağıq.
Ekranda rəsm çəkmək üçün obyekti də konfiqurasiya edəcəyik.
void setup (void) {dht.begin (); // sensorun göstərilməsi ilə əlaqədar məlumatların göstərilməsi.begin (); // LCD displey və ya LCD ekran üçün rəsmi məlumatları təmizləyin. Screen (); // məhdudlaşdırma, removendo todos os desenhos display.fillScreen (SİYAH); // əvvəlcədən göstərmək üçün bir şey tapın. setTextSize (2); // mətn yazmaq və ya yazmaq üçün 2 display.setTextColor (YAŞIL); // konfiqurasiya etmək üçün ekran görüntüsü.setCursor (5, 10); // işarəsi və ya işarəsi (x, y) display.print ("TEMPERATUR"); // escreve em tela display.setCursor (22, 70); // reposiciona və ya kursor display.print ("UMIDADE"); // tela display.setTextColor (BEYAZ); // gecikmə (1000) gecikdirmək üçün bir mətn yazmaq üçün konfiqurasiya; // espera de segundo}
Döngə
Döngü () funksiyasında, sensor tərəfindən oxunan və müəyyən bir yerdə ekranda yazılan rütubəti və temperaturu alacağıq. Hər 5 saniyəlik fasilədə dəyər sensordan oxunur və ekranda yazılır.
void loop () {int h = dht.readHumidity (); // sensorlar int t = dht.readTemperature (); // sensoru yoxlamaqla // "fillRect" funksiyasını yerinə yetirmək üçün iki əsas funksiyanı yerinə yetirmək lazımdır, bu da yerli və ya yerli temperaturun hər hansı bir hissəsini yoxlamaq üçün çox vacibdir. display.fillRect (5, 32, 120, 20, SİYAH); // fillRect (x, y, en, boy, rəng); display.fillRect (5, 92, 120, 20, SİYAH); display.setCursor (40, 35); // reposiciona və ya kursor üçün escrever display.print (t); // tela display.print ((char) 247); // craigo ekranını çıxarmaq üçün ekran.print ("C"); // "C" işarəsi Celcius display.setCursor (40, 95); // reposiciona və ya kursor üçün escrever display.print (h); // tela display.print ("%") bir ümiddən qaçın; // bir gecikmə gecikməsi (5000); }
Addım 7: Bəzi digər maraqlı funksiyalar
// Ekranın məzmununu döndərir (parametrlər 0, 1, 2 və ya 3)
display.setRotation (uint8_t);
// Ekran rənglərini geri çevirir (mənfi edir)
display.invertDisplay (boolean);
// (x, y) mövqeyində ekranda tək piksel çəkir
display.drawPixel (x, y, rəng);
// Mövqeyində şaquli bir xətt çəkir
display.drawFastVLine (x, y, en, rəng);
// Göstərilən mövqedə şaquli xətt çəkir
display.drawFastHLine (x, y, en, rəng);
// Göstərilən mövqedə üfüqi bir xətt çəkir
display.drawRect (x, y, en, boy, rəng);
// Göstərilən mövqedə bir dairə çəkir
display.drawCircle (x, y, radius, rəng);
Tövsiyə:
Smartfonu Kontaktsiz Termometr / Portativ Termometr Olaraq İstifadə Edin: 8 Addım (Şəkillərlə)
Smartfonu Kontaktsiz Termometr / Portativ Termometr Olaraq İstifadə Edin: Termo tabancası kimi təmassız / təmassız bədən istiliyinin ölçülməsi. Thermo Gun indi çox bahalı olduğu üçün bu layihəni yaratdım, buna görə DIY etmək üçün alternativ almalıyam. Və məqsəd aşağı büdcə versiyası ilə etməkdir.SuppliesMLX90614Ardu
ESP8266 istifadə edərək rəqəmsal termometr DHT11: 4 addım
ESP8266 istifadə edərək rəqəmsal termometr DHT11: Əvvəlki məqalədə DH11 -i və 7 Segment, LCD, Serial monitor və RGB ring kimi çıxış cihazlarında necə göstərilməsini müzakirə etmişəm və bu yazıda temperatur və rütubəti necə izlədiyinizi göstərəcəyəm. cib telefonunda brauzerdən istifadə etməklə
Arduino əsaslı təmassız infraqırmızı termometr - Arduino İstifadə edən İQ Əsaslı Termometr: 4 Addım
Arduino əsaslı təmassız infraqırmızı termometr | Arduino İstifadə edən İK Əsaslı Termometr: Salam uşaqlar bu təlimatlarda arduino istifadə edərək təmasda olmayan bir Termometr hazırlayacağıq. Bəzən mayenin/bərkin temperaturu çox yüksək və ya aşağıya enir, sonra onunla əlaqə qurmaq və oxumaq çətindir. o səhnədə temperatur
8 Rəqəmli X 7 Segmentli LED Ekranlı Rəqəmsal və İkili Saat: 4 Addım (Şəkillərlə)
8 Rəqəmli X 7 Segmentli LED Ekranlı Rəqəmsal və İkili Saat: Bu, Digital & 8 Rəqəmli x 7 Segmentli LED Ekranı istifadə edən İkili Saat Xüsusi saatlar üçün adi cihazlara yeni xüsusiyyətlər vermək istəyirəm və bu halda İkili Saat üçün 7 Seg displeyinin istifadəsi qeyri -ənənəvi və
7 Segmentli Ekranlı 8051 -dən İstifadə edərək Rəqəmsal Saat Necə Hazırlanır: 4 Addım
7 Segmentli Ekranlı 8051 -dən İstifadə edərək Rəqəmsal Saat Necə Hazırlanır: Bu layihədə sizə 7 seqmentli ekrana malik 8051 mikrokontrolördən istifadə edərək sadə rəqəmsal saatın necə hazırlanacağını izah etdim