-
Notifications
You must be signed in to change notification settings - Fork 7
[N] Memoria de vídeo LCD
El manejo de la LCD se plantea como si fuera una pantalla mucho más avanzada (tipo VGA) con la idea de que nos ayude a aprender conceptos básicos que llevar luego hacia sistemas gráficos más complejos.
La memoria de vídeo va a estar mapeada en memoria RAM, podría ser una memoria externa y compartida con el resto del sistema o ser una memoria interna dedicada para la LCD.
Inicialmente vamos a contemplar que es una memoria sólo para la LCD y así simplificaremos los ejemplos.
El tamaño máximo que necesitaremos (para calcular el ancho de palabra de las direciones será) en el caso más drástico será una LCD de 4 líneas que lleva dos chips en cascada.
Así que necesitaremos 80 caracteres por chip, es decir 160 caracteres de 8bits cada uno.
Como podemos personalizar 8 caracteres y el formato de comando es:
- DIRECCION
- LINEA de bits
y cada caracter tiene 8 líneas de bits, necesitaremos para personalizar cada caracter 8 posiciones de memoria para los datos y 8 para la dirección, así que en total 16 palabras por caracter.
Si personalizáramos los 8 caracteres posibles serían 16*8 = 128 palabras.
Es decir en total necesitamos para mapear la LCD y almacenar los caracteres personalizados 128+160 = 288 palabras.
A esto hay que añadirle un rango para posibles inicializaciones, actualmente por ejemplo usamos 6 palabras de inicialización.
Así que en el caso actual necesitaríamos 288+6= 294 palabras
por redondear bits vamos a usar un rango de direciones de 9 bits y así podremos utilizar hasta 512 Palabras.
Como vamos a almacenar en la memoria los dos bits de control para flexibilizar el uso y así poder incluso meter comandos entre medias, utilizaremos los 8 de datos +2 para control es decir 10bits.
La señal E es como el reloj de la LCD , es la señal que le indica cuando debe ejecutar un comando.
El tiempo de funcionamiento del ciclo son 500ns por lo que deberemos estar 250 a 1 y 250ns a 0.
Para el ciclo E se ha generado el siguiente circuito que se activará y desactivará con la máquina de arranque y parada: