Tabla de contenido:
Video: Pantalla LCD DIY I2C con entradas: 6 pasos
2025 Autor: John Day | [email protected]. Última modificación: 2025-01-13 06:57
El LCD paralelo típico que se utiliza con un Arduino (16x2 o 20x4) tiene 16 pines. Solo se requieren 6 pines de E / S en el Arduino, pero ¿qué pasaría si pudiera reducir eso a dos pines de E / S y aún tener esos pines disponibles para otros dispositivos?
La interfaz I2C está en los pines A4 y A5 del Arduino UNO. Estos son direccionables y, por lo tanto, se pueden compartir con otros dispositivos I2C que tienen direcciones diferentes. Ahora, puede comprar LCD I2C, e incluso puede encontrar LCD I2C con diferentes direcciones, pero normalmente son LCD de dos líneas y las direcciones son fijas. Voy a mostrarte cómo construir tu propia interfaz I2C, seleccionar una de las 8 direcciones e incluso ser capaz de agregar hasta 8 entradas o salidas, usando un chip expansor de 16 puertos MCP23017 Este es el mismo chip que Adafruit usa en su I2C LCD Keypad Shield, y usa su biblioteca para hablar con él. Incluso podría tener hasta 16 pantallas LCD o hasta 128 pines de E / S digitales y combinaciones de los mismos
MCP23017
LCD de 20x4 o LCD de 16x2
Paso 1: cableado de la pantalla LCD
Las conexiones entre el LCD paralelo tipo Hitachi (2 o 4 líneas) y el MCP23017 se muestran en la foto.
SDA (pin 13 en el MCP23017) se conecta a Arduino A4, y SCL (pin 12) se conecta a Arduino A5. Algunos sugieren resistencias pull up de 4.7k (pin 13 a + 5v y pin 12 a + 5v) pero este proyecto funciona bien sin ellos.
Observe la resistencia de 220 ohmios en la conexión k (cátodo, tierra) de la pantalla LCD. ¡Es un requisito!
Sin él, puede soplar el pin de luz de fondo MCP23107. Hay 3 pines que puede usar para la luz de fondo. El pin 1 se llama AZUL en la biblioteca y el Sketch, el pin 28 se llama VERDE y el pin 27 se llama ROJO. Si tiene una pantalla LCD monocromática, puede usar cualquiera de los tres pines y usar la leyenda de color correspondiente. Si tiene una luz de fondo RGB, puede obtener muchas combinaciones de colores. Échales un vistazo en
Los pines 15, 16 y 17 del MCP23017 determinan la dirección I2C. Tenemos los 3 conectados a tierra, ya que esta es la dirección predeterminada que usa la biblioteca Adafruit. Para agregar múltiples pantallas, o elegir otra dirección, la biblioteca tendrá que ser modificada, así que usaremos la predeterminada por ahora.
Adafruit_MCP23017.h contiene la siguiente línea:
#define MCP23017_ADDRESS 0x20
Pin 17 = A2, Pin 16 = A1 y Pin 15 = A0
0 = tierra, 1 = + 5v
El formato de la dirección es 0100A2A1A0, por lo que dado que hemos conectado a tierra las 3 líneas, estamos usando el binario 0100000 o 20 en hexadecimal (0x20). 0100111 sería 27 en hexadecimal (0x27).
Paso 2: cableado de los botones de entrada
Estamos incluyendo 5 botones de entrada en este proyecto. Los llamaremos Izquierda, Derecha, Arriba, Abajo y Seleccionar. Los botones pulsadores estándar son ideales para esto, pero cualquier sensor de encendido / apagado digital funcionará.
Conecte sus botones de la siguiente manera:
La izquierda se conecta entre Gnd y el pin 25 del MCP23017
La derecha se conecta entre Gnd y el pin 22
Up se conecta entre Gnd y el pin 24
Abajo se conecta entre Gnd y el pin 23
Seleccione conexiones entre Gnd y pin 21
Paso 3: Bosquejo LCD
Descargue e instale la biblioteca Adafruit, ejecute el ejemplo "Hello World" y esta interfaz lcd estará operativa. Usamos el pin 27 en el MCP23017, por lo que solo especifique ROJO para la retroiluminación monocromática.
Abordaremos la edición de la dirección de la biblioteca para que se puedan usar hasta 8 chips MCP23017 en un paso futuro. Envíeme un correo electrónico con preguntas.
Para más proyectos que usan este chip y código adicional, consulte:
arduinotronics.blogspot.com/2015/11/wifi-rechargeable-internet-clock.html
arduinotronics.blogspot.com/2015/10/add-up-to-128-inputsoutputs-or-mix-to.html
Paso 4: ¡Cómo funciona
Aquí hay un proyecto que construimos usando la versión Adafruit de este proyecto. La versión de bricolaje tiene el mismo cableado, pero es posible que tenga la versión monocromática en lugar de la luz de fondo RGB.
Paso 5: hoja de datos
Una hoja de datos completa está disponible en