El diagrama de pines de abajo coincide con el constructor LiquidCrystal del firmware y con las líneas de datos de los DHT22 usadas en este proyecto. Úsalo para comprobar los cables puente frente al sketch, sobre todo si hay pines analógicos funcionando como E/S digitales.
Mapa de pines del LCD 16×2
El sketch usa la forma de siete argumentos LiquidCrystal(rs, rw, enable, d4, d5, d6, d7). En este montaje:
- RS → pin digital 8
- RW → pin digital 9
- Enable → pin analógico A2 (usado como salida digital)
- D4–D7 → pines digitales 5, 6, 3 y pin analógico A3, respectivamente
La mayoría de los tutoriales conectan RW directamente a tierra y usan un constructor de seis argumentos. Conectar RW al pin 9 es menos habitual pero válido: permite que la biblioteca lea el indicador de ocupado del LCD en lugar de escribir cada carácter a ciegas.
Retroiluminación en el pin 7
El pin 7 no es una línea de datos del LCD. Controla la retroiluminación a través de un pequeño transistor en la protoboard (visible junto al conector en el montaje físico). Encender y apagar la retroiluminación por separado ahorra energía y permite hacer parpadear la pantalla para las alertas sin reescribir el texto del LCD.
Pines de datos de los DHT22
- Datos del sensor 1 → pin analógico A4
- Datos del sensor 2 → pin analógico A5
- Ambos sensores se conectan también a 5 V y GND
Los pines analógicos A4 y A5 funcionan perfectamente como entradas digitales en el Uno. En el código aparecen como A4 y A5, no con los alias D14/D15: conviene recordarlo al seguir los cables a simple vista.
Pines SPI reservados (Ethernet)
El shield Ethernet reserva los pines 10–13 para SPI. Ninguna conexión del LCD ni de los DHT22 puede usar esas líneas; en la práctica están vetadas en el conector. Planificar en torno a esa reserva es lo que hace posible combinar Ethernet y sensores locales en un solo Uno.
// Example constructor matching this wiring
#include <LiquidCrystal.h>
LiquidCrystal lcd(8, 9, A2, 5, 6, 3, A3);
// DHT22 data lines (DHT library pin arguments)
#define DHT_PIN_1 A4
#define DHT_PIN_2 A5
#define BACKLIGHT_PIN 7 Vuelve a la vista general del cableado del circuito para ver la disposición en la protoboard, o lee Sensores DHT22 y pantalla LCD para conocer el comportamiento en funcionamiento. Ejemplo de ingesta push (sin LCD): ethernet_dht22_ingest.
Preguntas frecuentes
¿Qué pines debo usar para un DHT22?
Usa un GPIO digital libre para la línea de datos, 3.3V o 5V según tu placa y las especificaciones del sensor, y una masa común. Evita los pines reservados por shields Ethernet/SPI.