Este tutorial es parte de: Sensor digital de humedad relativa y temperatura HTU21D
Vídeos relacionados con el sensor digital de humedad relativa y temperatura HTU21D. Encontrará enlaces a otros vídeos debajo de este artículo.
Mostrando la temperatura de un HTU21D en un LCD
En este tutorial, aprenderemos cómo mostrar las lecturas de temperatura del sensor de temperatura y humedad HTU21D en un LCD. El resultado será una configuración funcional donde la temperatura se podrá ver en grados Celsius, Fahrenheit y Kelvin, junto con la humedad relativa mostrada en la misma pantalla. Este proyecto te dará experiencia práctica con la comunicación I2C y el manejo básico de datos de sensores. Para una guía visual detallada, asegúrate de ver el video (en el video a las 00:00).

Hardware Explicado
Los componentes principales para este proyecto incluyen el sensor HTU21D y la pantalla LCD. El HTU21D es un sensor digital de humedad y temperatura que se comunica a través del protocolo I2C. Proporciona mediciones precisas de temperatura en grados Celsius o Fahrenheit y humedad relativa como un porcentaje. El sensor opera típicamente a un voltaje de 3.3V, pero también puede funcionar con sistemas de 5V. La pantalla LCD que utilizaremos es una LCD de 16x2 con una interfaz I2C. Este tipo de pantalla requiere solo dos cables para la comunicación de datos, lo que facilita la conexión con microcontroladores como Arduino. La interfaz I2C permite conectar múltiples dispositivos en el mismo bus, simplificando el cableado y reduciendo el número de pines utilizados.
Detalles de la hoja de datos
| Fabricante | Adafruit |
|---|---|
| Número de parte | HTU21D-F |
| Voltaje de lógica/IO | 3.3 V (típ.) |
| Voltaje de suministro | 1.5 V a 3.6 V |
| Corriente de salida | 0.5 mA (típ.) |
| Corriente de pico | 1.5 mA (máx.) |
| Rango de temperatura | -40 a 125 °C |
| Rango de humedad | 0 a 100 %HR |
| Paquete | DFN-6 |
| Notas / variantes | None |
- Asegúrese de que los niveles de voltaje sean correctos para evitar daños al sensor.
- Utiliza resistencias pull-up en las líneas SDA y SCL si es necesario.
- Verifique la dirección I2C con un escáner para asegurar una configuración correcta.
- Maneja la salida del sensor con cuidado para evitar errores de lectura.
- Mantenga el sensor alejado de fuentes de calor al tomar mediciones.
Instrucciones de cableado

Para conectar el sensor HTU21D al Arduino, conecta el pin VCC del sensor a la salida de 3.3V del Arduino. A continuación, conecta el pin GND del sensor a la tierra del Arduino. El pin SDA, que se utiliza para la transmisión de datos, debe conectarse al pin A4 del Arduino. De manera similar, conecta el pin SCL, que se utiliza para la señal de reloj, al pin A5 del Arduino. Asegúrate de que tu LCD esté conectado correctamente también; la dirección I2C para el LCD en esta configuración es típicamente 0x3F. Si estás utilizando un tipo diferente de LCD o una dirección I2C diferente, asegúrate de ajustar el código en consecuencia. Después de cablear, asegúrate de comprobar si hay conexiones sueltas antes de encender el Arduino.
Ejemplos de código y guía paso a paso
En el código, comenzamos incluyendo las bibliotecas necesarias para el sensor HTU21D y el LCD:
#include
#include "Adafruit_HTU21DF.h"
#include
Esto configura el entorno para usar tanto el sensor como la pantalla. La biblioteca `Adafruit_HTU21DF` maneja la funcionalidad del sensor, mientras que la biblioteca `LiquidCrystal_I2C` gestiona el LCD. A continuación, creamos una instancia tanto para el sensor como para el LCD:
Adafruit_HTU21DF htu = Adafruit_HTU21DF();
LiquidCrystal_I2C lcd(0x3F, 16, 2);
Aquí,htues el objeto para el sensor HTU21D, ylcdes el objeto para la pantalla LCD. La dirección I2C para la LCD está configurada en 0x3F, que puede que necesites verificar según tu configuración.setup()función, inicializamos el LCD y comprobamos si el sensor está en funcionamiento:
void setup() {
lcd.begin();
lcd.backlight();
if (!htu.begin()) {
lcd.print("Sensor missing");
while (1);
}
lcd.print("HTU21D Ready");
}
Este código inicializa la LCD y verifica la presencia del sensor. Si no se detecta el sensor, mostrará "Sensor faltante" y detendrá el programa.loop()función, continuamente leemos los valores de temperatura y humedad y los mostramos:
void loop() {
lcd.clear();
lcdDisplay(0, 0, "Celsius: ", 10, 0, getHTU('C'), 'd');
lcdDisplay(0, 1, "Humidity: ", 10, 1, getHTU('H'), '%');
delay(5000);
}
En este fragmento, borramos el LCD, luego llamamos allcdDisplay()función para mostrar la temperatura en grados Celsius y la humedad. LagetHTU()la función recupera la temperatura o la humedad según el carácter pasado.
Demostración / Qué Esperar
Cuando la configuración esté completa y el código se haya subido al Arduino, el LCD debería mostrar la temperatura actual en Celsius y la humedad relativa. Si todo está conectado correctamente, verás que los valores se actualizan cada pocos segundos. Ten cuidado con trampas comunes, como conexiones invertidas o direcciones I2C incorrectas, que pueden llevar a fallos en la comunicación del sensor (en el video a las 05:00).
Marcas de tiempo de video
- 00:00- Introducción
- 01:30- Instrucciones de cableado
- 03:15- Explicación del código
- 04:50- Demostración
- 05:40- Conclusión
Este tutorial es parte de: Sensor digital de humedad relativa y temperatura HTU21D
- Lección 35-1: Uso del sensor de temperatura HTU21D
- Lección 35-2: Uso del sensor de temperatura HTU21D - Código personalizado
- Lección 35: Uso del sensor de temperatura HTU21D con Arduino
- Lección 36: Uso del sensor de temperatura HTU21D con un LCD Curso paso a paso de Arduino
- Uso de dos sensores de humedad y temperatura HTU21DF más con Arduino
- Mostrando la temperatura de un HTU21D como un gráfico de barras en un LCD
- Cómo usar el sensor de humedad y temperatura HTU21DF con Arduino (Código básico)
- Cómo utilizar el sensor de humedad y temperatura HTU21DF con Arduino (código personalizado)
Cosas que podrías necesitar
-
Amazonas
-
eBayCompra HTU21D en eBayebay.us
-
AliExpressCompra HTU21D o SHT21 en AliExpresss.click.aliexpress.com
Recursos y referencias
-
ExternoBiblioteca Adafruit HTU21D (GitHub)github.com
Archivos📁
Hoja de datos (pdf)
-
HTU21D_temerature_humidity_datasheet
HTU21D_temerature_humidity_datasheet.pdf0.96 MB