Table des matières:
- Étape 1: Module graphique LCD 128x128 RVB TFT ILI 9163C
- Étape 2: Capteur d'humidité et de température AM2302 DHT22
- Étape 3: Circuit
- Étape 4: Assemblage
- Étape 5: Bibliothèque
- Étape 6: Coder
- Étape 7: Quelques autres fonctions intéressantes
Vidéo: Thermomètre numérique ESP8266 avec écran LCD : 7 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:09
Aujourd'hui, je vais vous montrer comment utiliser un écran LCD TFT sur l'ESP8266 NodeMCU pour afficher les données de température et d'humidité pour un environnement en temps réel donné. Je fais un exemple d'utilisation de l'affichage avec DHT22, qui est la jauge de température et d'humidité. Dans cette vidéo, en particulier, j'utilise un écran compact pour notre thermomètre numérique, qui est graphique et permet une surveillance sur le système lui-même. L'objectif d'aujourd'hui est donc de s'initier au maniement de l'affichage à cristaux liquides à l'aide de l'ESP8266.
Étape 1: Module graphique LCD 128x128 RVB TFT ILI 9163C
L'affichage que nous utilisons dans ce projet est de 128x128 pixels. Le 0, 0 est dans le coin supérieur gauche, et ce modèle a à la fois des fonctions d'impression de texte et d'impression graphique, dont nous traiterons plus tard.
Étape 2: Capteur d'humidité et de température AM2302 DHT22
Nous utiliserons l'AM2302 DHT22 dans notre montage, qui est un capteur que j'aime beaucoup car il est très précis.
Étape 3: Circuit
Dans le projet, nous avons un ESP8266 déjà programmé et utilisant l'alimentation USB. Le DHT22 est connecté aux données et la résistance de rappel à l'ESP8266, qui contrôle l'écran LCD.
Étape 4: Assemblage
Ici, nous avons le schéma électrique de notre assemblage, qui montre le NodeMCU, le capteur et l'affichage. N'oubliez pas qu'il s'agit d'un affichage série, i2c, qui est plus facile à utiliser car il a plus de broches.
Étape 5: Bibliothèque
Puisque nous allons programmer l'affichage avec le langage Arduino C, nous avons besoin de la bibliothèque DHT22, ainsi que de l'écran LCD.
Tout d'abord, ajoutez la bibliothèque « Bibliothèque de capteurs DHT » suivante pour la communication avec le capteur d'humidité et de température.
Accédez simplement à "Esquisse >> Inclure les bibliothèques >> Gérer les bibliothèques …"
Maintenant, ajoutez la bibliothèque suivante, "Adafruit-GFX-Library-master".
Accédez simplement à "Esquisse >> Inclure les bibliothèques >> Gérer les bibliothèques …"
Ajoutez également la bibliothèque "TFT_ILI9163C" pour la communication avec le module graphique LCD.
Accédez au lien ((((((https://github.com/sumotoy/TFT_ILI9163C))))) et téléchargez la bibliothèque.
Décompressez le fichier et collez-le dans le dossier des bibliothèques de l'IDE Arduino.
C:/Program Files (x86)/Arduino/bibliothèques
Étape 6: Coder
Ajoutons d'abord les bibliothèques qui seront utilisées dans notre code.
#include //utilizada para se comunicar com o módulo LCD#include //utilizada para se comunicar com o sensor de umidade e temperatura
Définitions
Nous verrons ci-dessous les variables que nous utiliserons au cours du programme, et l'instance des objets.
#define DHTPIN D6 // pino que conectaremos o sensor DHT22#define DHTTYPE DHT22 // DHT22 é o tipo do sensor que utilizaremos (important para o construtor) DHT dht(DHTPIN, DHTTYPE); // construtor do objeto que utilizaremos para se comunicar com o sensor // Définitions des couleurs #define BLACK 0x0000 #define BLUE 0x001F #define RED 0xF800 #define GREEN 0x07E0 #define CYAN 0x07FF #define MAGENTA 0xF81F #define YELLOW 0xFITE 0 #define définir _CS D1 // pino que conectaremos o CS do module LCD #define _DC D4 // pino que conectaremos o RS do module LCD TFT_ILI9163C display = TFT_ILI9163C(_CS, _DC); // construtor do objeto que utilizaremos para se comunicar com o módulo LCD
Installer
Dans la fonction setup(), on initialise la variable « dht », qui est responsable de la communication avec le capteur d'humidité et de température. On va aussi initialiser la variable « display » qui sert à communiquer avec le module LCD.
Nous allons également configurer l'objet pour commencer à dessiner à l'écran.
void setup(void) { dht.begin(); // Initialisation pour la communication avec le capteur display.begin(); // Initialisation pour la communication avec le module LCD display.clearScreen(); // limpa a tela, removendo todos os desenhos display.fillScreen(BLACK); // pinta un tel toda de preto display.setTextSize(2); // configura o tamanho do texto com o tamanho 2 display.setTextColor(GREEN); // configura a cor do texto como verde display.setCursor(5, 10); // positionner le curseur sur une entrée à partir de (x, y) display.print("TEMPERATUR"); // escreve em tela display.setCursor(22, 70); // reposiciona o curseur display.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 }
Boucle
Dans la fonction loop(), on va récupérer l'humidité et les températures lues par le capteur et écrites sur l'écran à l'endroit précis. A chaque intervalle de 5 secondes, la valeur est lue depuis le capteur et écrite sur l'écran.
boucle vide(){ 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 temperature, apagaremos o valor atual para escrever novamente atualizado. display.fillRect(5, 32, 120, 20, NOIR); // fillRect(x, y, largeur, hauteur, couleur); display.fillRect(5, 92, 120, 20, NOIR); display.setCursor (40, 35); // reposiciona o curseur pour escrever display.print(t); // escreve une 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); // reposiciona o curseur pour escrever display.print(h); // escreve un umidade em tela display.print("%"); // escreve o símbolo de “porcentagem” para indicar a umidade delay (5000); }
Étape 7: Quelques autres fonctions intéressantes
// Fait pivoter le contenu de l'écran (paramètres 0, 1, 2 ou 3)
display.setRotation (uint8_t);
// Inverse les couleurs d'affichage (fait un négatif)
display.invertDisplay (booléen);
// Dessine un seul pixel sur l'écran à la position (x, y)
display.drawPixel (x, y, couleur);
// Trace une ligne verticale en position
display.drawFastVLine (x, y, largeur, couleur);
// Trace une ligne verticale à la position spécifiée
display.drawFastHLine (x, y, largeur, couleur);
// Trace une ligne horizontale à la position spécifiée
display.drawRect (x, y, largeur, hauteur, couleur);
// Dessine un cercle à la position spécifiée
display.drawCircle (x, y, rayon, couleur);
Conseillé:
Utiliser un smartphone comme thermomètre sans contact / thermomètre portable : 8 étapes (avec photos)
Utiliser le smartphone comme thermomètre sans contact/thermomètre portable : mesure de la température corporelle avec sans contact/sans contact comme un pistolet thermique. J'ai créé ce projet parce que Thermo Gun est maintenant très cher, je dois donc trouver une alternative pour faire du bricolage. Et le but est de faire avec la version à petit budget.SuppliesMLX90614Ardu
Thermomètre infrarouge sans contact basé sur Arduino - Thermomètre IR utilisant Arduino : 4 étapes
Thermomètre infrarouge sans contact basé sur Arduino | Thermomètre basé sur IR utilisant Arduino : Salut les gars dans cette instructables, nous allons faire un thermomètre sans contact à l'aide d'arduino. Puisque parfois la température du liquide/solide est beaucoup trop élevée ou trop basse, puis il est difficile d'entrer en contact avec lui et de lire son température alors dans ce scen
Écran LCD I2C/IIC - Utilisez un écran LCD SPI vers l'écran LCD I2C à l'aide du module SPI vers IIC avec Arduino : 5 étapes
Écran LCD I2C/IIC | Utilisez un écran LCD SPI sur l'écran LCD I2C à l'aide du module SPI vers IIC avec Arduino : Salut les gars, car un SPI LCD 1602 normal a trop de fils à connecter, il est donc très difficile de l'interfacer avec arduino, mais il existe un module disponible sur le marché qui peut convertir l'affichage SPI en affichage IIC, vous n'avez donc besoin de connecter que 4 fils
Écran LCD I2C/IIC - Convertir un écran LCD SPI en écran LCD I2C : 5 étapes
Écran LCD I2C/IIC | Convertir un écran LCD SPI en écran LCD I2C : l'utilisation de l'écran lcd spi nécessite trop de connexions, ce qui est vraiment difficile à faire
Thermomètre numérique Acme avec sonde de température DS18B20 et écran LCD I2C : 5 étapes
Thermomètre numérique Acme avec sonde de température DS18B20 et écran LCD I2C : il s'agit d'un projet très simple qui ne coûte pas très cher et ne prendra pas beaucoup de temps. Je l'ai mis dans une boîte Amazon parce qu'il était là, mais cela pouvait être monté dans à peu près n'importe quoi