Creación y visualización de caracteres personalizados en LCD de 16×2 usando el microcontrolador 8051 (89c51,89c52)
Roberto Magalhães
Este tutorial trata sobre cómo crear y mostrar caracteres personalizados en una pantalla LCD de 16×2 usando el microcontrolador 8051(89c51,89c52). Por costumbre me refiero a caracteres que no son alfabetos, dígitos o caracteres de valor ASCII. En cambio, son nuevos y están diseñados por nosotros. Primero te recomiendo que sigas el siguiente sencillo tutorial. Esto le informará sobre la estructura interna de la pantalla LCD de caracteres, sus registros, memoria y controlador utilizado para controlar los caracteres mostrados (HD4478). Pero si sólo necesitas el código del proyecto, continúa.
Cómo mostrar caracteres personalizados en la pantalla LCD de caracteres.
Cómo funciona la pantalla LCD NXN
Pantalla de fuente personalizada en LCD de 16×2 con microcontrolador 89c51
Después de leer el tutorial, podrá comprender el código del tutorial/proyecto escrito a continuación y también estará familiarizado con laRAM generada por caracteres (CG-RAM) de 16×2 lcd. Los caracteres personalizados se crean en la CG-RAM de la pantalla LCD de 16x2 y luego el controlador los invoca para mostrarlos en la pantalla LCD de 16x2. CG admite RAM de “ carácter generado ” (memoria de solo lectura). Usé Hitachi 16×2 LCD en el proyecto, puedes usar cualquier otro. Pero asegúrese de cambiar algunos comandos de inicialización en el código si está utilizando una pantalla LCD de cualquier otro tamaño que no sea 16×2 (lea la hoja de datos: Comandos para la inicialización de una pantalla LCD con un tamaño distinto de 16×2).
Caracteres personalizados en el diagrama de circuito LCD de 16×2
El circuito del proyecto también es sencillo. Los pines 5 y 6 del puerto 3 se usan como pines rs (conjunto de registros) y en (habilitar) para LCD, no sé qué es, simplemente haga clic en el enlace y obtendrá un buen tutorial al respecto (Cómo usar NXN LCD obras). El puerto 1 es del microcontrolador 8051 y está conectado a los pines de datos del LCD de 16×2. El cristal externo de 11,0592 MHz se utiliza para proporcionar reloj al microcontrolador.
Caracteres personalizados mostrados en una pantalla LCD de 16×2 con diagrama de circuito del microcontrolador 89c51
Generación de caracteres personalizados con código de proyecto del microcontrolador 8051
Estoy usando keil ide para escribir y compilar código. En el código, en primer lugar, he incluido el archivo de encabezado predefinido reg51.h . Esta biblioteca debe incluirse siempre que escriba código para microcontroladores de la serie 8051 (89c51) en keil ide. La ausencia de este puede causarle un problema; generalmente el compilador no compilará su archivo.
He definido los caracteres personalizados necesarios en forma de matrices de caracteres que luego se utilizan para generar caracteres. El puerto 1 del microcontrolador 89c51 se utiliza para enviar datos y comandos a la pantalla LCD. El resto del código es simple, la función de retraso es generar algún retraso arbitrario. La función lcdint está inicializando la pantalla lcd.En mi función principal estoy generando caracteres personalizados y luego imprimiéndolos en una pantalla LCD de 16×2. La función principal está en el ciclo continuo while(1) . Debido a esto , mientras (1) los caracteres de bucle continuo se muestran continuamente en la pantalla LCD de 16 × 2 caracteres.
Sólo puedes crear 8 caracteres a la vez en CG-RAM. También solo hice 8 personajes personalizados, pero es un método simple para generar más. El método consiste en crear primero 8 caracteres y luego mostrarlos en la pantalla LCD. Ahora vuelve a hacer 8 personajes. La creación de nuevos personajes reemplazará a los personajes CG-RAM anteriores. De hecho, la CG-RAM se sobrescribe con nuevos caracteres. Por tanto, aplicando esta sencilla técnica podrás crear tantos personajes como necesites.Si tiene alguna pregunta sobre la publicación o no puede entender el código, deje sus comentarios a continuación.
Descargue los archivos y el código del proyecto (C++,HEX). El código está escrito en lenguaje c. keil uvision 4 se utiliza para generar código hexadecimal y compilar código. La carpeta de descarga contiene todos los archivos del proyecto.
Carácter personalizado en LCD con microcontrolador 89C51