En el artículo, conectaremos una pantalla de cristal líquido 1602 con un módulo FC-113 I2C a Arduino, por lo que la conexión se realizará utilizando solo dos cables de datos y dos cables de alimentación.
Es necesario
- - Arduino;
- - Pantalla LCD 1602 (16 caracteres, 2 líneas);
- - Adaptador I2C FC-113;
- - cables de conexión.
Instrucciones
Paso 1
El módulo FC-113 se basa en el microcircuito PCF8574T, que es un registro de desplazamiento de 8 bits: expansor de E / S para el bus serie I2C. En la figura, el microcircuito se designa como DD1.
R1 es una resistencia de recorte para ajustar el contraste de la pantalla LCD.
El puente J1 se utiliza para encender la luz de fondo de la pantalla.
Los pines 1… 16 se utilizan para conectar el módulo a los pines de la pantalla LCD.
Se necesitan las almohadillas de contacto A1 … A3 para cambiar la dirección del dispositivo I2C. Soldando los puentes correspondientes, puede cambiar la dirección del dispositivo. La tabla muestra la correspondencia de direcciones y puentes: "0" corresponde al circuito abierto, "1" - al puente instalado. De forma predeterminada, la dirección del dispositivo es 0x27, es decir, los 3 puentes están abiertos.
Paso 2
El módulo está conectado al Arduino como estándar para el bus I2C: el pin SDA del módulo está conectado al puerto analógico A4, el pin SCL está conectado al puerto analógico A5 del Arduino. El módulo está alimentado por + 5V del Arduino. El módulo en sí está conectado por los pines 1 … 16 con los pines correspondientes 1 … 16 en la pantalla LCD.
Paso 3
Ahora necesitamos una biblioteca para trabajar con LCD a través de la interfaz I2C. Puede utilizar, por ejemplo, este: https://www.dfrobot.com/wiki/index.php?title=I2C/TWI_LCD1602_Module_(SKU:_DFR0063)#Sample_Code (enlace en la línea "Descargar código de muestra y biblioteca").
El archivo descargado "LiquidCrystal_I2Cv1-1.rar" se descomprime en la carpeta "\ libraries ", que se encuentra en el directorio IDE de Arduino.
La biblioteca admite un conjunto de funciones estándar para pantallas LCD:
LiquidCrystal (): crea una variable de tipo LiquidCrystal y acepta parámetros de conexión de pantalla (números de pin), begin () - inicialización de la pantalla LCD, configuración de parámetros (número de líneas y símbolos);
clear (): limpia la pantalla y devuelve el cursor a la posición inicial;
home (): devuelve el cursor a la posición inicial;
setCursor () - colocando el cursor en la posición especificada;
escribir (): muestra un carácter en la pantalla LCD;
imprimir (): muestra texto en la pantalla LCD;
cursor () - muestra el cursor, es decir subrayado debajo del lugar del siguiente carácter;
noCursor (): oculta el cursor;
blink () - cursor parpadeando;
noBlink () - cancela el parpadeo;
noDisplay (): apaga la pantalla mientras se guarda toda la información mostrada;
display () - enciende la pantalla mientras guarda toda la información mostrada;
scrollDisplayLeft () - desplaza el contenido de la pantalla 1 posición hacia la izquierda;
scrollDisplayRight (): desplaza el contenido de la pantalla una posición hacia la derecha;
autoscroll (): habilita el desplazamiento automático;
noAutoscroll (): desactiva el desplazamiento automático;
leftToRight (): establece la dirección del texto de izquierda a derecha;
rightToLeft () - dirección del texto de derecha a izquierda;
createChar (): crea un carácter personalizado para la pantalla LCD.
Paso 4
Abramos la muestra: Archivo -> Muestras -> LiquidCrystal_I2C -> CustomChars y rehagamos un poco. Vamos a mostrar un mensaje, al final del cual habrá un símbolo parpadeante. Todos los matices del boceto se comentan en los comentarios al código.
Paso 5
Echemos un vistazo más de cerca al tema de la creación de sus propios símbolos para pantallas LCD. Cada carácter de la pantalla consta de 35 puntos: 5 de ancho y 7 de alto (+1 subrayado reservado). En la línea 6 del esquema anterior, establecemos una matriz de 7 números: {0x0, 0xa, 0x1f, 0x1f, 0xe, 0x4, 0x0}. Convirtamos números hexadecimales a binarios: {00000, 01010, 11111, 11111, 01110, 00100, 00000}. Estos números no son más que máscaras de bits para cada una de las 7 líneas del carácter, donde "0" denota un punto claro y "1" un punto oscuro. Por ejemplo, un símbolo de corazón especificado como una máscara de bits aparecerá en la pantalla como se muestra en la figura.
Paso 6
Sube el boceto a Arduino. La pantalla mostrará la inscripción que especificamos con un cursor parpadeante al final.