Tabla de contenido:
- Paso 1: Módulo gráfico LCD 128x128 RGB TFT ILI 9163C
- Paso 2: Sensor de temperatura y humedad AM2302 DHT22
- Paso 3: circuito
- Paso 4: Montaje
- Paso 5: biblioteca
- Paso 6: Código
- Paso 7: algunas otras funciones interesantes
Video: Termómetro digital ESP8266 con pantalla LCD: 7 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:43
Hoy, le mostraré cómo usar una pantalla LCD TFT en el ESP8266 NodeMCU para mostrar datos de temperatura y humedad para un entorno dado en tiempo real. Hago un ejemplo del uso de la pantalla con DHT22, que es el indicador de temperatura y humedad. En este video, específicamente, utilizo una pantalla compacta para nuestro termómetro digital, que es gráfica y permite monitorear el sistema en sí. El objetivo de hoy, por tanto, es aprender sobre el manejo de la pantalla de cristal líquido utilizando el ESP8266.
Paso 1: Módulo gráfico LCD 128x128 RGB TFT ILI 9163C
La pantalla que usamos en este proyecto es de 128x128 píxeles. El 0, 0 está en la esquina superior izquierda, y este modelo tiene funciones de impresión de texto e impresión de gráficos, de las que trataremos más adelante.
Paso 2: Sensor de temperatura y humedad AM2302 DHT22
Usaremos el AM2302 DHT22 en nuestro montaje, que es un sensor que me gusta mucho, ya que es muy preciso.
Paso 3: circuito
En el proyecto, tenemos un ESP8266 que ya está programado y utiliza la alimentación USB. El DHT22 está conectado a los datos y la resistencia pull-up al ESP8266, que controla la pantalla LCD.
Paso 4: Montaje
Aquí tenemos el diagrama eléctrico de nuestro ensamblaje, que muestra el NodeMCU, el sensor y la pantalla. Recuerde que esta es una pantalla en serie, i2c, que es más fácil de usar porque tiene más pines.
Paso 5: biblioteca
Dado que vamos a programar la pantalla con el lenguaje Arduino C, necesitamos la biblioteca DHT22, así como la pantalla LCD.
Primero, agregue la siguiente biblioteca de "biblioteca de sensores DHT" para la comunicación con el sensor de humedad y temperatura.
Simplemente acceda a "Sketch >> Incluir bibliotecas >> Administrar bibliotecas …"
Ahora, agregue la siguiente biblioteca, "Adafruit-GFX-Library-master".
Simplemente acceda a "Sketch >> Incluir bibliotecas >> Administrar bibliotecas …"
Además, agregue la biblioteca "TFT_ILI9163C" para la comunicación con el módulo gráfico LCD.
Acceda al enlace ((((((https://github.com/sumotoy/TFT_ILI9163C))))) y descargue la biblioteca.
Descomprima el archivo y péguelo en la carpeta de bibliotecas del IDE de Arduino.
C: / Archivos de programa (x86) / Arduino / bibliotecas
Paso 6: Código
Primero agreguemos las bibliotecas que se usarán en nuestro código.
#include // usada para se comunicar com o módulo LCD # include // usada para se comunicar com o sensor de umidade e temperatura
Definiciones
Veremos a continuación las variables que usaremos durante el programa, y la instancia de los objetos.
#define DHTPIN D6 // pino que conectaremos o sensor DHT22 # define DHTTYPE DHT22 // DHT22 é o tipo de sensor que utilizaremos (importante para o construtor) DHT dht (DHTPIN, DHTTYPE); // construtor do objeto que utilizaremos para se comunicar com o sensor // Definiciones de color #define BLACK 0x0000 #define BLUE 0x001F #define RED 0xF800 #define GREEN 0x07E0 #define CYAN 0x07FF #define MAGENTA 0xF81F #define YELLOW 0xFFEITE0 #define # define _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); // construtor do objeto que utilizaremos para se comunicar com o módulo LCD
Configuración
En la función setup () inicializamos la variable "dht", que se encarga de la comunicación con el sensor de humedad y temperatura, también inicializaremos la variable "display" que se utiliza para comunicarse con el módulo LCD.
También configuraremos el objeto para empezar a dibujar en pantalla.
configuración vacía (vacío) {dht.begin (); // inicialización para comunicar com o sensor display.begin (); // inicialización para comunicar el módulo LCD display.clearScreen (); // limpa una tela, eliminando todos los desenhos display.fillScreen (BLACK); // pinta una tela toda de preto display.setTextSize (2); // configura o tamanho do texto com o tamanho 2 display.setTextColor (VERDE); // configura un cor do texto como verde display.setCursor (5, 10); // posiciona o cursor para venir a escribir a partir de (x, y) display.print ("TEMPERATUR"); // escreve em tela display.setCursor (22, 70); // reposiciona o cursor display.print ("UMIDADE"); // escreve em tela display.setTextColor (BLANCO); // configura un cor do texto como branco (a partir de agora) delay (1000); // espera de 1 segundo}
Círculo
En la función loop (), recuperaremos la humedad y las temperaturas leídas por el sensor y escritas en la pantalla en la ubicación específica. En cada intervalo de 5 segundos, el valor se lee del sensor y se escribe en la pantalla.
bucle vacío () {int h = dht.readHumidity (); // faz a leitura da umidade do sensor int t = dht.readTemperature (); // faz a leitura da temperatura do sensor // as 2 lineas seguintes using o método “fillRect”, são for 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, NEGRO); // fillRect (x, y, ancho, alto, color); display.fillRect (5, 92, 120, 20, NEGRO); display.setCursor (40, 35); // reposiciona el cursor para escrever display.print (t); // rescatar una temperatura en la pantalla de la pantalla.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 el cursor para escrever display.print (h); // crear una umidade em tela display.print ("%"); // escreve o símbolo de "porcentagem" para indicar un retraso de umidade (5000); }
Paso 7: algunas otras funciones interesantes
// Gira el contenido de la pantalla (parámetros 0, 1, 2 o 3)
display.setRotation (uint8_t);
// Invierte los colores de la pantalla (hace un negativo)
display.invertDisplay (booleano);
// Dibuja un solo píxel en la pantalla en la posición (x, y)
display.drawPixel (x, y, color);
// Dibuja una línea vertical en posición
display.drawFastVLine (x, y, ancho, color);
// Dibuja una línea vertical en la posición especificada
display.drawFastHLine (x, y, ancho, color);
// Dibuja una línea horizontal en la posición especificada
display.drawRect (x, y, ancho, alto, color);
// Dibuja un círculo en la posición especificada
display.drawCircle (x, y, radio, color);
Recomendado:
Use el teléfono inteligente como termómetro sin contacto / termómetro portátil: 8 pasos (con imágenes)
Use el teléfono inteligente como termómetro sin contacto / termómetro portátil: mide la temperatura corporal con un termómetro sin contacto / sin contacto como una pistola térmica. Creé este proyecto porque Thermo Gun ahora es muy caro, así que debo buscar una alternativa para hacer bricolaje. Y el propósito es hacer con una versión de bajo presupuesto. SuministrosMLX90614Ardu
Termómetro infrarrojo sin contacto basado en Arduino - Termómetro basado en infrarrojos con Arduino: 4 pasos
Termómetro infrarrojo sin contacto basado en Arduino | Termómetro basado en infrarrojos con Arduino: Hola chicos, en este instructivo, haremos un termómetro sin contacto con arduino, ya que a veces la temperatura del líquido / sólido es demasiado alta o demasiado baja y luego es difícil hacer contacto con él y leer su temperatura entonces en ese escenario
Pantalla LCD I2C / IIC - Use una pantalla LCD SPI para la pantalla LCD I2C usando el módulo SPI a IIC con Arduino: 5 pasos
Pantalla LCD I2C / IIC | Use una pantalla LCD SPI para la pantalla LCD I2C usando el módulo SPI a IIC con Arduino: Hola a todos, ya que una pantalla LCD SPI 1602 normal tiene demasiados cables para conectar, por lo que es muy difícil conectarlo con arduino, pero hay un módulo disponible en el mercado que puede Convierta la pantalla SPI en la pantalla IIC, por lo que solo necesita conectar 4 cables
Pantalla LCD I2C / IIC - Convierta una pantalla LCD SPI en una pantalla LCD I2C: 5 pasos
Pantalla LCD I2C / IIC | Convierta una pantalla LCD SPI en la pantalla LCD I2C: el uso de la pantalla lcd spi necesita demasiadas conexiones, lo cual es realmente difícil de hacer, así que encontré un módulo que puede convertir la pantalla lcd i2c en la pantalla lcd spi, así que comencemos
Termómetro digital Acme con sonda de temperatura DS18B20 y pantalla LCD I2C: 5 pasos
Termómetro digital Acme con sonda de temperatura DS18B20 y LCD I2C: este es un proyecto muy simple que no cuesta mucho y no llevará mucho tiempo. Lo puse en una caja de Amazon porque estaba allí, pero podría montarse en casi cualquier cosa