Interface LCD no modo 4 bits com LPC1768- (Parte 5/21)

Interfaz LCD en modo de 4 bits con LPC1768- (Parte 5/21)

Conectar una pantalla LCD de 5 V con un controlador de 3,3 V como el LPC1768 es un poco complicado de manejar. Este es el artículo que explica cómo una pantalla LCD de 16x2 interactúa con LPC1768 en modo de 4 bits. LCD en 4 bits, lo que significa que usaremos 4 líneas en lugar de 8 líneas, lo que ahorra 4 GPIO que se pueden usar para otros fines. La configuración del entorno para el desarrollo de ARM Cortex M3 se analiza detalladamente en este artículo.

El LPC 1768 es un microcontrolador basado en ARM Cortex-M3 para capacidades de aplicaciones integradas con bajo consumo de energía y un alto nivel de integración. El ARM Cortex M3 está diseñado para mejorar las capacidades de depuración y un mayor nivel de integración del sistema. Funciona a una frecuencia de CPU de 100 MHz e incorpora una tubería de 3 etapas y utiliza una arquitectura Harvard con buses de datos e instrucciones locales separados para periféricos de tercer bus. La CPU ARM Cortex-M3 tiene una unidad de captación previa interna para admitir ramas especulativas. Los componentes periféricos incluyen memoria flash de 512 KB, memoria de datos de 64 KB, Ethernet MAC, USB OTG, 4 UART, controlador DMA de uso general de 8 canales, 2 controladores SSP, DAC de 10 bits, interfaz de codificador de cuadratura, interfaz SPI, 3 buses I2C interfaz, interfaz de bus I2S de 2 entradas más 2 salidas, 4 temporizadores de uso general, reloj en tiempo real (RTC) de potencia ultrabaja con suministro de batería independiente y hasta 70 pines de E/S de usuario General, 6 salidas generales -propósito PWM. Los LPC1768/66/65/64 son compatibles con los pines de la serie de microcontroladores basados ​​en LPC236x ARM7 de 100 pines.

Conceptos básicos de la pantalla LCD 16X2:

La pantalla LCD china utilizada aquí es la JHD162A. Dispone de un controlador KS0066U/HD44780U. Tiene un dispositivo de interfaz de 16 pines que consta de 2 líneas con 16 caracteres cada una. El voltaje de funcionamiento es de 5V. Además, cuenta con retroiluminación LED. Hay 2 modos de funcionamiento:

1) Modo de instrucción: para inicializar y configurar la pantalla LCD antes de usarla

2) Modo de datos: Muestra los caracteres de los códigos respectivos que se suministran a la pantalla LCD a través de los pines de datos.

Descripción del pin LCD:

Número de PIN

Símbolo

E/S

Descripción

1

VSS

Piso

dos

CCV

+5V

3

VEE

control de contraste

4

JAJAJA

Prohibido

Registro de comandos/datos

5

R/E

Prohibido

Registro de lectura/escritura

6

Y

Entrada salida

Permitir

7

DB0

Entrada salida

No se utiliza en modo de 4 bits

8

DB1

Entrada salida

No se utiliza en modo de 4 bits

9

DB2

Entrada salida

No se utiliza en modo de 4 bits

10

DB3

Entrada salida

No se utiliza en modo de 4 bits

11

DB4

Entrada salida

Bus de datos en modo de 4 bits

12

DB5

Entrada salida

Bus de datos en modo de 4 bits

13

DB6

Entrada salida

Bus de datos en modo de 4 bits

14

DB7

Entrada salida

Bus de datos en modo de 4 bits

15

CCV

Para retroiluminación LCD

dieciséis

VSS

Para retroiluminación LCD

Fig. 1: Descripción de los pines del LCD

Inicializando el módulo LCD:

Después de verificar todas las conexiones del MCU al HFC4050 y al módulo LCD, podemos proceder a mostrar el texto en la pantalla LCD. Pero primero, es necesario inicializar correctamente la pantalla LCD. (Según la hoja de datos) Antes de inicializar la pantalla LCD, deberá esperar un tiempo mínimo de aproximadamente 15 milisegundos después de que el suministro de voltaje de entrada sea estable y superior a 4,5 voltios.

El primer paso es asegurarse de que RS y Habilitar se mantengan BAJOS. El siguiente paso es ingresar algunos comandos en la pantalla LCD usando los pines de datos. Estos comandos no se ejecutarán hasta que se suministre un pulso al pin Habilitar. Después de proporcionar un pulso al comando, Habilitar debe configurarse en Alto y luego en Bajo después de un breve retraso. Luego, se ejecuta el comando.

La pantalla LCD se puede configurar en modo de 4 bits enviándole el comando apropiado llamado "Configuración de funciones". El conjunto de funciones es un comando hexadecimal de la unidad LCD MPU, que selecciona los modos de funcionamiento de la LCD. El “Conjunto de funciones” se menciona en la siguiente tabla:

Conjunto de funções do LCD para configurar no modo 4 bits

Fig. 2: Conjunto de funciones LCD para configurar en modo 4 bits

Descripción:

DL: longitud de los datos (DL = 1,8 bits, DL = 0,4 bits)

N – Número de líneas (N = 1 2 Líneas, N = 0 1 Líneas)

F – Fuentes (F = 1 5×10 puntos, F = 0 5×7 puntos)

Según la tabla, el valor del conjunto de funciones para el modo de 4 bits será 0010 0000(0x20) porque DL=0. El valor de “Conjunto de funciones” para la configuración LCD de 2 líneas (N=1), 5X7 puntos (F=0) y modo de 4 bits (DL=0) será 0010 1000(0x28).

Cuando se suministra alimentación a la pantalla LCD, ésta permanece en modo de 8 bits. Ahora, si se envía 0x20, la pantalla LCD no recibirá el cuarteto inferior porque hay cuatro líneas de datos (D4-D7) conectadas, por lo que se envía 0x02 en lugar de 0x20. Para obtener más detalles sobre la interfaz LCD, consulte estos enlaces.

Cómo interconectar LCD en modo de 4 bits con microcontrolador AVR.

Cómo interconectar LCD con LPC2148.

Cree un proyecto usando Keil uvision4 para el microcontrolador LPC1768:

En esta sección, comenzaremos a crear un proyecto en Keil MDK, ya hemos instalado Keil µVision y Co-MDK Plug-in + CoLinkEx Drivers necesarios para el adaptador de programación CoLinkEx. Puede comenzar descargando los archivos del proyecto y comenzar su experimento práctico.

Código.rar

Descripción del código:

Estas funciones explicadas se incluyen en la creación de una biblioteca LCD y en los archivos de codificación.

La siguiente función es enviar bytes de comando a la pantalla LCD:

Lcd_CmdWrite

La siguiente función es enviar bytes de datos a la pantalla LCD:

LCD_DataWrite

Inicialización en modo de 4 bits:

LCD_CmdWrite(0x02); // Inicializa la pantalla LCD en modo de 4 bits

LCD_CmdWrite(0x28); // habilita el modo 5×7 para los personajes

Lcd_CmdWrite(0x0E); // Pantalla apagada, cursor encendido

LCD_CmdWrite(0x01); //Borra la pantalla

LCD_CmdWrite(0x80); // Mueve el cursor al principio de la primera línea.

Código fuente del proyecto

 ###
Los códigos están vinculados en la Descripción ###

Diagramas de circuito

Diagrama de circuito de interfaz LCD en modo de 4 bits con LPC1768

Componentes del proyecto

  • LCD
  • CONDUJO
  • Resistor

Vídeo del proyecto

contenido relacionado

Regresar al blog

Deja un comentario

Ten en cuenta que los comentarios deben aprobarse antes de que se publiquen.