Home Soluciones Guía de la interfaz de control del LCD Character STN

Guía de la interfaz de control del LCD Character STN

Jan 19, 2023

Introducción

Winstar ofrece una amplia gama de módulos LCD de caracteres estándar para aplicaciones industriales y sistemas embebidos. Los tipos de display estándar disponibles incluyen las series WH0802, WH1202, WH1601, WH1602, WH1604, WH2002, WH2004, WH2402 y WH4002. Al requerir un número mínimo de pines de control, estos módulos facilitan la integración del display y la selección del MCU adecuado para cada aplicación.

Los módulos LCD de caracteres convencionales del mercado suelen incorporar una placa de conversión adicional para habilitar la interfaz I2C, tal como se muestra en la Figura 1. Esta solución puede incrementar el grosor del LCM, añadir etapas adicionales al proceso de fabricación y reducir el rendimiento de producción.
 

Módulo LCD de caracteres convencional con placa de conversión I2C adicional

Figura 1: Módulo LCD de caracteres convencional del mercado con una placa de conversión adicional para habilitar la interfaz I2C.

Módulo LCD de caracteres WH1602 de Winstar con interfaces I2C y SPI integradas

Figura 2: El módulo LCD de caracteres WH1602 de Winstar incorpora interfaces I2C y SPI sin necesidad de una placa de conversión adicional.

 

Sin añadir una placa de conversión, basta con conectar la placa de desarrollo Arduino Uno para controlar directamente los siguientes módulos LCD de caracteres de Winstar mediante diferentes interfaces de comunicación.

  • WINSTAR WH1602 LCM: 16 caracteres × 2 líneas
  • WINSTAR WH2002 LCM: 20 caracteres × 2 líneas
  • WINSTAR WH2004 LCM: 20 caracteres × 4 líneas
 

Estas tres series LCM integran el controlador LCD RW1063 y admiten interfaces serie (I2C y SPI), así como la interfaz paralela (6800).

Nota: Para obtener más información sobre las interfaces de display, consulte "Comprender las interfaces de display".

Definición de los pines del LCM

N.º de pin Símbolo Descripción
No.1 Vss Tierra (GND)
No.2 Vdd Alimentación de la lógica
No.3 V0 Ajuste de contraste
No.4 RS Selección de comando/datos
No.5 RW Señal de selección lectura/escritura únicamente para interfaz 6800 de 8/4 bits
No.6 E Señal de habilitación únicamente para interfaz 6800 de 8/4 bits
No.7 DB0/SA0 Línea de bus de datos 0 únicamente para interfaz 6800 de 8 bits
Línea de configuración de dirección SA0 para interfaz I2C
No.8 DB1/SA1 Línea de bus de datos 1 únicamente para interfaz 6800 de 8 bits
Línea de configuración de dirección SA1 para interfaz I2C
No.9 DB2 Línea de bus de datos 2 únicamente para interfaz 6800 de 8 bits
No.10 DB3 Línea de bus de datos 3 únicamente para interfaz 6800 de 8 bits
No.11 DB4 Línea de bus de datos 4 únicamente para interfaz 6800 de 8/4 bits
No.12 DB5/CSB/CSB Línea de bus de datos 5 únicamente para interfaz 6800 de 8/4 bits
Líneas de selección CSB Enable para interfaces I2C y SPI
No.13 DB6/SDA/SCLK Línea de bus de datos 6 únicamente para interfaz 6800 de 8/4 bits
Línea de datos SDA para interfaz I2C
Señal de reloj SCLK para interfaz SPI
No.14 DB7/SCL/SID Línea de bus de datos 7 únicamente para interfaz 6800 de 8/4 bits
Línea de reloj SCL para interfaz I2C
Línea de datos SID para interfaz SPI
No.15 A+ Alimentación del backlight (B/L) +
No.16 K- Alimentación del backlight (B/L) -
 
Tabla 1: Definición de los pines del LCM

 

En relación con el pin V0 indicado en la tabla anterior, se utiliza un resistor variable de 20 kΩ para ajustar el contraste de los caracteres. Durante la prueba, si el texto no es visible o la imagen de fondo continúa mostrándose, ajuste este resistor variable para configurar el contraste adecuado.

El método de conexión del resistor variable V0 se muestra en la Figura 3:

Método de conexión del resistor variable V0
 
Figura 3: Método de conexión del resistor variable V0

 

Cómo conectar el LCM con la placa de desarrollo Arduino Uno

 

La Figura 4 muestra los métodos de conexión de las cuatro interfaces de comunicación del LCM (I2C, SPI, 6800 de 8 bits/4 bits) con Arduino Uno. Se puede observar que las interfaces I2C y SPI requieren únicamente un número reducido de pines GPIO para controlar los módulos LCD de caracteres.

Para la interfaz I2C, dado que Arduino Uno incorpora resistencias pull-up internas en los pines I2C, no es necesario conectar resistencias pull-up adicionales a los pines SDA y SCL. Si las resistencias pull-up internas se deshabilitan mediante el programa, será necesario conectar resistencias pull-up externas.

(a) Conexión de interfaz I2C

Conexión de interfaz I2C entre LCM y Arduino Uno

(b) Conexión de interfaz SPI

Conexión de interfaz SPI entre LCM y Arduino Uno

(c) Conexión de interfaz 6800 de 4 bits

Conexión de interfaz 6800 de 4 bits entre LCM y Arduino Uno

(d) Conexión de interfaz 6800 de 8 bits

Conexión de interfaz 6800 de 8 bits entre LCM y Arduino Uno

Figura 4: Métodos de conexión de las cuatro interfaces de comunicación del LCM con Arduino Uno.

 

Comandos del LCM

No todas las interfaces de comunicación permiten utilizar el conjunto completo de comandos del LCM. En la interfaz SPI no existe una línea de control RW ni pines MISO, por lo que no se admite la función de lectura de comandos. Para la escritura, la línea de control RS determina si se envían datos de comando o datos de display.

En la interfaz I2C tampoco existe una línea de control RW, por lo que no se admiten comandos de lectura. Antes de escribir datos de comando o datos de display, es necesario enviar el código de control de comando (A0=0) o el código de control de datos (A0=1) para determinar si el siguiente byte corresponde a un comando o a datos de display.

Temporización de las interfaces SPI e I2C

Las Figuras 5 y 6 muestran los diagramas de temporización para controlar el LCM mediante la interfaz SPI. Se puede observar que el SPI utilizado por el LCM no corresponde a la interfaz SPI estándar normalmente proporcionada por un MCU. Es necesario añadir una línea de señal RS para determinar si el byte enviado corresponde a un comando o a un dato. Los datos de bits (BIT7~BIT0) de la línea de datos (SID) cambian cuando la línea de reloj (SCLK) se encuentra en nivel bajo. Los datos de bits (BIT7~BIT0) se capturan cuando la línea de reloj (SCLK) se encuentra en nivel alto.

Temporización de escritura de comando SPI

Figura 5: Temporización de escritura de comando SPI

Temporización de escritura de datos SPI

Figura 6: Temporización de escritura de datos SPI

Las Figuras 7 y 8 muestran los diagramas de temporización para controlar el LCM mediante la interfaz I2C. Excepto por la señal Chip Select Bar (CSB), se puede observar que el control mediante la interfaz I2C consiste en enviar tres bytes en cada operación de escritura de datos de comando o datos de display. Entre ellos, el bit A0 del segundo byte determina si el tercer byte corresponde a un comando o a datos de display.

Temporización I2C de escritura de comandos

Figura 7: Temporización I2C de escritura de comandos

Temporización I2C de escritura de datos

Figura 8: Temporización I2C de escritura de datos

Código

El LCM puede compilarse y utilizarse directamente mediante la modificación de la configuración del programa.

Step1: configurar el número máximo de caracteres por línea del LCM.
Por ejemplo, la siguiente configuración establece un máximo de 16 caracteres por línea.

Step1: configuración del número máximo de caracteres por línea del LCM

Step2: configurar el número máximo de líneas del LCM.
Por ejemplo, la siguiente configuración establece el LCM con 2 líneas.

Step2: configuración del número máximo de líneas del LCM

Step3: configurar la interfaz del LCM.
Por ejemplo, la siguiente configuración selecciona la interfaz I2C.

Step3: configuración de la interfaz del LCM

Step4: compilar el programa y cargarlo en la placa de desarrollo Arduino Uno.
La Figura 9 muestra una representación esquemática de las pantallas de tres LCMs.
Cuando el contraste del display sea demasiado claro u oscuro, el resistor variable conectado al pin V0 puede ajustarse para obtener un contraste adecuado, tal como se muestra en la Figura 10.

(a) Contraste bajo
Solo se pueden ver caracteres con poca intensidad.
(b) Contraste adecuado (c) Contraste alto
Cada carácter presenta una sombra visible.
figure9-a-1-pantallas-de-tres-lcms figure9-b-1-pantallas-de-tres-lcms figure9-c-1-pantallas-de-tres-lcms
figure9-a-2-pantallas-de-tres-lcms figure9-b-2-pantallas-de-tres-lcms figure9-c-2-pantallas-de-tres-lcms
figure9-a-3-pantallas-de-tres-lcms figure9-b-3-pantallas-de-tres-lcms figure9-c-3-pantallas-de-tres-lcms
Figura 9: Representación esquemática de las pantallas de tres LCMs

 

Figura 10: pin V0 ajustable

Figura 10: Pin V0 ajustable

Si necesita el código de demostración completo, póngase en contacto con nosotros.

¿Tiene preguntas sobre soluciones de pantallas para su negocio? Contacte con nosotros!

Subscribirse

Reciba correos electrónicos sobre nuevas actualizaciones de Winstar

Contacte con nosotros

Precio/Ficha técnica/Consulta general

Soporte técnico

Contacte con nosotros para cualquier información técnica

go top
Contacto
close

Valoramos tu privacidad

Al hacer clic en "Permitir todas las cookies", aceptas el almacenamiento de cookies en tu dispositivo para mejorar la navegación en el sitio, analizar el uso del sitio y ayudar en nuestros esfuerzos de marketing y rendimiento. Puedes encontrar más información sobre este tema en nuestra política. Política de privacidad

Valoramos tu privacidad

Winstar y ciertos terceros utilizan cookies en www.winstar.com.tw. Los detalles sobre los tipos de cookies, su propósito y las partes involucradas se describen a continuación y en nuestra Política de Cookies. Haga clic en “Permitir todos” para dar su consentimiento para el uso de cookies y tener la mejor experiencia posible en nuestros sitios web. También puede establecer sus preferencias o rechazar cookies (excepto las cookies estrictamente necesarias).

Gestionar preferencias de consentimiento

Siempre activo
Cookies esenciales

Estas cookies son esenciales para permitirte navegar por el sitio web y utilizar sus funciones, como establecer tus preferencias de privacidad, iniciar sesión o completar formularios.

Cookies de análisis

También conocidos como "cookies estadísticas", estas cookies recogen información sobre cómo utilizas un sitio web, como qué páginas has visitado y qué enlaces has clicado. Ver detalles.