Pantalla LCD y Arduino Uno: cableado y código de cristal líquido I2C

El uso de una pantalla es una necesidad común para tener visualización de datos para proyectos que incluyen una pantalla móvil. La pantalla LCD de caracteres de cristal líquido I2C 16X2 es uno de los dispositivos más utilizados y se puede conectar a Arduino Uno mediante Arduino IDE

En este tutorial, le mostraré cómo conectar y usar una pantalla LCD con Arduino Uno.

Características principales de la pantalla LCD

La pantalla de cristal líquido es una parte importante de un sistema y ayuda a mostrar las diferentes limitaciones del proyecto. Hay muchos tipos de pantallas LCD disponibles en el mercado y pueden identificarse fácilmente por la interfaz; la mayoría de las pantallas LCD tienen interfaces de diez pines y requieren cableado y código apropiados. La pantalla LCD I2C tiene un circuito controlador compatible con el chip PCF8574 I2C que simplifica la fase de cableado.

La familia más común de LCD es LCD de 16 × 2 caracteres que tiene dieciséis columnas y dos filas de caracteres y estos se pueden programar de manera efectiva en un entorno Arduino. La vista pictórica de la pantalla LCD de 16×2 se muestra en la figura.

Los principales tipos de LCD son: TFT LCD, Nextion LCD, Character LCD

En este tutorial, el enfoque del trabajo es el LCD de caracteres. Los caracteres de palabras significan que se pueden mostrar letras (A, B, C… Z, a, b,… z y símbolos) y decimales (1,2,3) en esta pantalla LCD. Otros gráficos como gráficos, formas de onda no se pueden mostrar en él.

Lo que necesitamos

Como de costumbre, sugiero agregar desde ahora a su carrito de compras de comercio electrónico favorito todo el hardware necesario, para que al final pueda evaluar los costos generales y decidir si continúa con el proyecto o los elimina del carrito de compras. Entonces, el hardware será solo:

También necesitaremos una PC con el software Arduino IDE.

También puede evaluar el kit de inicio económico de Elegoo, que incluye una serie de sensores útiles para sus proyectos de electrónica.

Consulta precios de hardware en los siguientes enlaces:

Procedimiento paso a paso

La pantalla LCD I2C contiene 4 pines, que son VCC, GND, SCL y SDA. SCL y SDA están dedicados a la comunicación i2C. Cada microcontrolador tiene pines dedicados de I2C. Para Arduino Uno son A4 (SDA) y A5 (SCL).

Tablero Pines dedicados I2C
Uno, Ethernet A4 (SDA), A5 (SCL)
Arduino Mega 2560 20 (SDA), 21 (SCL)
leonardo 2 (SDA), 3 (SCL)
Vencer 20 (SCA), 21 (SCL)

Diagrama de cableado

Conecte la pantalla LCD con la placa Arduino siguiendo la imagen:

El siguiente es el diagrama esquemático de LCD conectado con el Arduino

Obtener el código ArduinoLCD

Conecte su PC a Arduino y abra Arduino IDE. Para los primeros pasos, puede consultar el tutorial Conexión de PC con Windows con Arduino. Descargue el código y la biblioteca «arduinoLCD» desde este enlace

Deberá importar esta biblioteca en su IDE de Arduino antes de compilar el código.

Extraiga la carpeta de su PC. Tendrá una carpeta llamada «arduinoLCD» que contiene un archivo llamado «arduinoLCD.ino». Abra este archivo con su IDE de Arduino.

Código Explicación

Esta es la sección antes de la configuración que se usa para definir variables de globo y adiciones de bibliotecas. Wire.h es la biblioteca para la comunicación de dos hilos I2C, Liquid_crystal_I2C es una biblioteca LCD que se comunica en el protocolo de comunicación I2C. El elemento secundario de la biblioteca se crea en la tercera línea, que define 0x27 como la dirección i2c, 16 son las columnas mientras que 2 son las filas. Si tiene una pantalla LCD de 20X4, simplemente escriba 20 reemplazando 16 y 4 reemplazando 2.

#include <Wire.h> #include <LiquidCrystal_I2C.h> // LCD I2C added LiquidCrystal_I2C lcd(0x27, 16, 2); // Child of LCD

Esta es la sección de configuración en la que la pantalla LCD se inicializa mediante el comando lcd.begin(), mientras que la pantalla LCD contiene una luz que se puede encender y apagar. Cuando se inicializa lcd.backlight, enciende las luces LCD. La pantalla LCD de caracteres viene con retroiluminación azul y amarilla.

void setup() {   lcd.begin(); // Lcd started   lcd.backlight(); // LCD back light on } 

En la sección de bucle, los cursores LCD se definen en qué carácter se debe escribir, lcd.setCursor (0,0) significa que el cursor debe estar en la ubicación de la columna 0 y la fila 0. lcd.print («Segundos») se ocupa de los segundos como una cadena e imprimirlo directamente. Si lo que se escribe es lcd.print(segundos), sin doble coma, el código lo considerará como una variable, la cual deberá ser definida.

Lcd.print(millis()/1000) donde millis() es el tiempo del programa cuando se inició la placa Arduino, dividido por 1000 significa milisegundos convertidos a segundos.

void loop() {   lcd.setCursor(0, 0);   lcd.print("Seconds");   lcd.setCursor(1, 1);   lcd.print(millis() / 1000); } 

Ejecute el código Arduino Buzzer

Desde su Arduino IDE, compile el código. Una vez que la operación de compilación haya finalizado con éxito, cárguela en su Arduino y la pantalla LCD comenzará a mostrarse con Arduino como en la siguiente imagen: