Daftar Isi:
- Langkah 1: Modul Grafis LCD 128x128 RGB TFT ILI 9163C
- Langkah 2: Sensor Kelembaban dan Suhu AM2302 DHT22
- Langkah 3: Sirkuit
- Langkah 4: Perakitan
- Langkah 5: Perpustakaan
- Langkah 6: Kode
- Langkah 7: Beberapa Fungsi Menarik Lainnya
Video: ESP8266 Termometer Digital Dengan Layar LCD: 7 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:57
Hari ini, saya akan menunjukkan cara menggunakan layar LCD TFT pada NodeMCU ESP8266 untuk menampilkan data suhu dan kelembapan untuk lingkungan waktu nyata tertentu. Saya membuat contoh penggunaan layar dengan DHT22, yaitu pengukur suhu dan kelembaban. Dalam video ini, secara khusus, saya menggunakan tampilan ringkas untuk termometer digital kami, yang grafis dan memungkinkan pemantauan pada sistem itu sendiri. Oleh karena itu, tujuan hari ini adalah untuk mempelajari tentang penanganan layar kristal cair menggunakan ESP8266.
Langkah 1: Modul Grafis LCD 128x128 RGB TFT ILI 9163C
Tampilan yang kami gunakan dalam proyek ini adalah 128x128 piksel. Angka 0, 0 ada di sudut kiri atas, dan model ini memiliki fungsi pencetakan teks dan pencetakan grafis, yang akan kita bahas nanti.
Langkah 2: Sensor Kelembaban dan Suhu AM2302 DHT22
Kami akan menggunakan AM2302 DHT22 dalam perakitan kami, yang merupakan sensor yang sangat saya sukai, karena sangat presisi.
Langkah 3: Sirkuit
Dalam proyek ini, kami memiliki ESP8266 yang sudah diprogram dan menggunakan daya USB. DHT22 terhubung ke Data dan resistor pull-up ke ESP8266, yang mengontrol layar LCD.
Langkah 4: Perakitan
Di sini, kami memiliki diagram listrik perakitan kami, yang menunjukkan NodeMCU, sensor, dan tampilan. Ingat bahwa ini adalah tampilan serial, i2c, yang lebih mudah digunakan karena memiliki lebih banyak pin.
Langkah 5: Perpustakaan
Karena kita akan memprogram tampilan dengan bahasa Arduino C, kita membutuhkan library DHT22, serta LCD.
Pertama, tambahkan perpustakaan "perpustakaan sensor DHT" berikut untuk komunikasi dengan sensor kelembaban dan suhu.
Cukup akses "Sketsa >> Sertakan Perpustakaan >> Kelola Perpustakaan …"
Sekarang, tambahkan perpustakaan berikut, "Adafruit-GFX-Library-master."
Cukup akses "Sketsa >> Sertakan Perpustakaan >> Kelola Perpustakaan …"
Juga, tambahkan perpustakaan "TFT_ILI9163C" untuk komunikasi dengan modul grafis LCD.
Akses tautan ((((((https://github.com/sumotoy/TFT_ILI9163C))))) dan unduh perpustakaan.
Buka zip file dan tempel ke folder perpustakaan Arduino IDE.
C: / Program Files (x86) / Arduino / perpustakaan
Langkah 6: Kode
Pertama mari kita tambahkan perpustakaan yang akan digunakan dalam kode kita.
#include //utilizada para se comunicar com o módulo LCD#include //utilizada comunicar com o sensor de umidade dan suhu
definisi
Kita akan melihat di bawah variabel yang akan kita gunakan selama program, dan instance dari objek.
#define DHTPIN D6 // pino que conectaremos o sensor DHT22#define DHTTYPE DHT22 // DHT22 untuk melakukan sensor dengan utilizaremos (penting untuk konstrutor) DHT dht(DHTPIN, DHTTYPE); // konstruktor melakukan objeto que utilizaremos para se comunicar com o sensor // Definisi warna #define BLACK 0x0000 #define BLUE 0x001F #define RED 0xF800 #define HIJAU 0x07E0 #define CYAN 0x07FF #define MAGENTA #define 0xF81F #define FFE0 #0xdefine YELOW definisikan _CS D1 // koneksi cepat o CS lakukan módulo LCD #define _DC D4 // koneksi cepat o RS lakukan módulo LCD TFT_ILI9163C display = TFT_ILI9163C(_CS, _DC); // konstruktor melakukan objeto que utilizaremos para se comunicar com o módulo LCD
Mempersiapkan
Dalam fungsi setup (), kami menginisialisasi variabel "dht," yang bertanggung jawab untuk komunikasi dengan sensor kelembaban dan suhu. Kami juga akan menginisialisasi variabel "tampilan" yang digunakan untuk berkomunikasi dengan modul LCD.
Kami juga akan mengonfigurasi objek untuk mulai menggambar di layar.
pengaturan batal(batal) { dht.begin(); // inicializao para se comunicar com o sensor display.begin(); // inicializao para se comunicar com o modulo LCD display.clearScreen(); // limpa a tela, removendo todos os desenhos display.fillScreen(BLACK); // pinta a toda de preto display.setTextSize(2); // configura o tamanho melakukan texto com o tamanho 2 display.setTextColor(GREEN); // mengonfigurasi dan melakukan teks untuk tampilan.setCursor(5, 10); // posisi kursor untuk datangçar a escrita a partir do (x, y) display.print("TEMPERATUR"); // escreve em tela display.setCursor(22, 70); // reposisi atau tampilan kursor.print("UMIDADE"); // escreve em tela display.setTextColor(WHITE); // configura a cor do texto como branco (a partir de agora) delay(1000); // espera de 1 segundo }
Lingkaran
Dalam fungsi loop (), kami akan mengambil kelembaban dan suhu yang dibaca oleh sensor dan ditulis di layar di lokasi tertentu. Pada setiap interval 5 detik, nilainya dibaca dari sensor dan ditulis di layar.
void loop(){ int h = dht.readHumidity(); // faz a leitura da umidade lakukan sensor int t = dht.readTemperature(); // faz a leitura da suhu lakukan sensor //sebagai 2 baris utilizando o método “fillRect”, são para fazer a limpeza lakukan lokal onde escreveremos a umidade e a suhu, apagaremos o valor atual para escrever novamente atualizado. display.fillRect(5, 32, 120, 20, HITAM); // fillRect(x, y, lebar, tinggi, warna); display.fillRect(5, 92, 120, 20, HITAM); display.setCursor(40, 35); // reposisi kursor untuk escrever display.print(t); // escreve a temperature 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); // reposisi kursor untuk escrever display.print(h); // escreve a umidade em tela display.print("%"); // escreve atau simbol dari "porcentagem" untuk menunjukkan penundaan umidade(5000); }
Langkah 7: Beberapa Fungsi Menarik Lainnya
// Memutar isi layar (parameter 0, 1, 2 atau 3)
display.setRotation (uint8_t);
// Membalikkan warna tampilan (membuat negatif)
display.invertDisplay (boolean);
// Menggambar satu piksel pada layar pada posisi (x, y)
display.drawPixel (x, y, warna);
// Menggambar garis vertikal pada posisi
display.drawFastVLine (x, y, lebar, warna);
// Menggambar garis vertikal pada posisi yang ditentukan
display.drawFastHLine (x, y, lebar, warna);
// Menggambar garis horizontal pada posisi yang ditentukan
display.drawRect (x, y, lebar, tinggi, warna);
// Menggambar lingkaran pada posisi yang ditentukan
display.drawCircle (x, y, radius, warna);
Direkomendasikan:
Macintosh layar sentuh - Mac Klasik Dengan iPad Mini untuk Layar: 5 Langkah (dengan Gambar)
Macintosh layar sentuh | Mac Klasik Dengan IPad Mini untuk Layar: Ini adalah pembaruan dan desain revisi saya tentang cara mengganti layar Macintosh vintage dengan iPad mini. Ini adalah yang ke-6 yang saya buat selama bertahun-tahun dan saya cukup senang dengan evolusi dan desain yang satu ini! Kembali pada tahun 2013 ketika saya membuat
Gunakan Smartphone Sebagai Termometer Non Kontak / Termometer Portabel: 8 Langkah (dengan Gambar)
Gunakan Smartphone Sebagai Termometer Non Kontak / Portable Thermometer : Mengukur suhu tubuh dengan non-kontak / contactless seperti thermo gun. Saya membuat proyek ini karena Thermo Gun sekarang sangat mahal, jadi saya harus mendapatkan alternatif untuk membuat DIY. Dan tujuannya dibuat dengan versi anggaran rendah.SuppliesMLX90614Ardu
Layar LCD I2C / IIC - Gunakan LCD SPI ke Layar LCD I2C Menggunakan Modul SPI ke IIC Dengan Arduino: 5 Langkah
Layar LCD I2C / IIC | Menggunakan LCD SPI ke Layar LCD I2C Menggunakan Modul SPI ke IIC Dengan Arduino: Hai teman-teman karena LCD SPI 1602 yang normal memiliki terlalu banyak kabel untuk dihubungkan sehingga sangat sulit untuk menghubungkannya dengan arduino tetapi ada satu modul yang tersedia di pasaran yang dapat ubah tampilan SPI menjadi tampilan IIC sehingga Anda hanya perlu menghubungkan 4 kabel
Layar LCD I2C / IIC - Mengonversi LCD SPI ke Layar LCD I2C: 5 Langkah
Layar LCD I2C / IIC | Mengkonversi LCD SPI ke Layar LCD I2C: menggunakan layar lcd spi membutuhkan terlalu banyak koneksi yang sangat sulit untuk dilakukan jadi saya menemukan modul yang dapat mengubah lcd i2c ke lcd spi jadi mari kita mulai
Termometer Dengan Warna Relatif Suhu pada Layar TFT 2" dan Beberapa Sensor: 5 Langkah
Termometer Dengan Warna Relatif Suhu pada Layar TFT 2" dan Beberapa Sensor: Saya telah membuat tampilan yang menunjukkan pengukuran beberapa sensor suhu. Yang keren adalah warna nilainya berubah dengan suhu:> 75 derajat Celcius = MERAH> 60 > 75 = ORANGE> 40 < 60 = KUNING> 30 < 40