Una pantalla de cristal líquido o LCD (Liquid Cristal Display) es un dispositivo para la presentación de imagenes o caracteres. En este caso usaremos uno basado en el µControlador Hitachi 44780 o compatible, que muestra 16 o 20 caracteres en 1, 2 o 4 líneas. Las funciones de control son iguales para todos los modelos.
Conexionado:
PIN Nombre Dirección Función 01 Vss P GND 02 Vdd P Alimentación a 5V 03 Vee P Control de contraste 04 RS I Selección de Registro / Dato 05 RW I Selección de Escritura / Lestura 06 E I Enable / Disable 07 - 14 D0 - D7 I/O Bus de datos 15 - 16 A - K P Corresponden al ánodo y cátodo del backlight (si el modelo lo tiene) Bueno, la operacion del display es bastante sencilla ya que el µControlador interno, hace casi todo el trabajo, para comandarlo debemos saber como funcionan sus pines.
Para enviar un comando o un dato deberemos primero indicar que es lo que estamos enviando para eso se usa el pin RS, cuando este pin esta en 0 el LCD interpretará la información que esta prensente en sus pines D0 a D7 como un comando, si está en 1 significa que estamos enviandole un caracter, en cuyo caso se imprimira donde esté actualmente el cursor.
Asimismo en lugar de enviar información puede llegar el momento en que queramos leer algo de su memoria, para eso se utiliza el pin R/W, en 0 el LCD estará en modo escritura y en 1 en modo lectura.
El pin E es el que le indica al display que ejecute la operación que estamos enviandole, cuando este pin esta en 0 cualquier modificación que hagamos en sus otros pines será ignorada. Entonces la forma de proceder será asi:
- Se colocan los pines RS en 1 o 0 dependiendo si vamos a enviar un caracter o una dirección.
- R/W a 0 si queremos enviar un caracter o un comando y en 1 si queremos leer algun dato del display.
- Ponemos D0 a D7 Con el valor del caracter que queremos imprimir, o con el comando que deseamos ejecutar en el display ( si R/W es 1 estos pines se convertiran en salidas y solo podremos leer el estado)
- Por ultimo se pone en alto el pin E y el display ejecutará la función.
Ahora bien, como ya comenté por ahi, el R/W no lo usaremos, ya que como nosotros escribiremos en el display no necesitaremos obtener ninguna información de el, para hacer esto basta con conectar el pin 5 (R/W) directamente a GND y el LCD estará siempre en modo escritura.
El funcionamiente se resumiría asi: RS nos servirá para indicarle al LCD si lo que le estamos mandando es un comando o un caracter; D0 a D7 para enviarle el dato o el comando y E para que lo ejecute.
Para enviar un caracter simplemente ponemos RS en 1 y el valor binario del caracter en los pines D0 a D7E y aparecerá nuestro caracter en pantalla. luego pasamos a 1 el pin.
Impresión de caracteres.Pero esto solo nos permite escribir un caracter al lado de otro, para seleccionar donde escribir, borrar pantalla etc debemos hacer el mismo procedimiento pero con el pin RS en 0 y los pines D0 a D7 con el valor del comando correspondiente a la operación que queramos hacer:
CLEAR DISPLAY Borra el contenido de la pantalla.
HOMEColoca el cursor en el primer espacio de la primera línea sin modificar el contenido de la pantalla.
ENTRY MODE SETEspecifica el modo en que se imprimiran los caracteres.
I/D = 0 Incrementa el cursor
I/D=1 Decrementa el cursor
S=0 Desplaza el cursor
S=1 Desplaza el display
DISPLAY ON/OFF CONTROL Control de encendido y apagado de la pantalla.
D=0 Pantalla apagado
D=1 Pantalla encendida
C=0 Oculta el cursor
C=1 Muestra el cursor
B=0 Cursor estático
B=1 Cursor parpadeante
CURSOR OR DISPLAY SHIFT Mueve el display o el cursor.
S/C=0 Mueve el cursor
S/C=1 Mueve el display
R/L=0 Mueve a la derecha
R/L=1 Mueve a la izquierda
FUNCTION SET Establece el bus de datos, cantidad de líneas y modo de caracteres.
DL=0 Bus de datos de 4 bits (D4 a D7)
DL=1 Bus de datos de 8 bits (D0 a D7)
N=0 LCD de 1 línea
N=1 LCD de 2 líneas
F=0 Caracteres de 5 x 7 pixeles
F=1 caracteres de 5 x 10 pixeles
SET CG RAM ADDRESSIngresando de este modo la dirección de la CG RAM, indica que cuando usemos el comando para escribir en el display, lo que enviaremos serán caracteres personalizados, se necesitan 7 instrucciones por caracter.
SET DD RAM ADDRESSCuando escribimos en el display lo que en realidad estamos diciendole al módulo que haga es almacenar X caracter en Y posición de memoria, con este comando indicamos en que lugar de la DD RAM se guardará el próximo caracter que enviemos. 80-8F corresponde a la memoria para la primera linea y C0-CF a la segunda.
Lo siguiente que nos queda es mostrar las rutinas para hacer todo esto, y eso lo pueden ver en este apartado: Control de un módulo LCD con PIC y CCS C
Conexión y funciones de un módulo LCD
Etiquetas:
Conexión,
Diagrama,
Display,
Electrónica,
Hitachi 44780,
LCD,
Microcontrolador,
PIC,
Robótica
Suscribirse a:
Enviar comentarios (Atom)
muy chulo, un trabajo encomiable.
ResponderEliminaradmirable.
si me ponen una pistola al pecho y me obligaran a corregir algo, quizás me decidiría por colocar un color algo mas claro de fondo para hacer mas facil la lectura
Muchas gracias, y con respecto a los colores es algo que justamente estaba tratando de corregir, en un principio pensé que sería bueno idea para no cansar la vista, pero leyendo algunas recomendaciones sobre estilo, me enteré que lo mejor es una fuente oscura sobre fondo claro.
ResponderEliminarsaludos.
perdona, tendrias por ahi algun circuito para controlar un display retirado de una calculadora dañada?, quise limpiar los numeros del velocimetro de mi carro y los borre, use un circuito para hacer un velocimetro digital (lo encontre en internet)pero si le pega el sol, no se ve el display, entonces quiero poner ese display LCD, pero al parecer, no se usa voltaje constante porque se daña el display, podrias ayudarme??
ResponderEliminartips, criticas, lo que sea a ofsalcido@gmail.com
gracias por adelantado
octavio salcido
Ya te respondí en la entrada http://picrobot.blogspot.com/2008/12/display7segshiftregister.html ya que el display que dices es un VFD y el manejo es mas parecido a un display de LED que a un LCD microcontrolado.
ResponderEliminarSaludos.
Hola, mi amigo, perdona por ser tan latoso pero te juro que es un display LCD de una calculadora moderna, en mi tiempo tambien hice circuitos con VFd, pero se acaban las pilas muy rapido, en serio, es un LCD.
ResponderEliminarUna pregunta, que software utilizas para programar ya que programe en MICKROC pero hay algunas instrucciones que no encuentro como int8, una pregunta más que modelo de LCD utiliza ya que yo probe con un LCD SC162A3 y pues no puedo hacer ke despliege caracteres
ResponderEliminarLa programación está hecha en CCS C, int8 puede ser que la puedas reemplazar por simplemente int (no conozco el lenguaje que me dices).
ResponderEliminarY el LCD puede ser cualquiera que esté controlado por un µControlador Hitachi 44780 o compatible, creo que ese modelo es compatible.
Saludos.
ola nose si me puede ayudar en la coneccion entre el lcd y el pic respecto al programa del pic
ResponderEliminargracias
La conexión del módulo LCD al PIC la tienes en la siguiente entrada http://picrobot.blogspot.com/2008/12/controlar-de-un-lcd-con-pic-y-ccs-c.html
ResponderEliminarSaludos.
Hola, tengo 2 display distintos en sus conecciones al flex, podrias guiarme como conectarlos corrctamente para que se vea la imagen, te cuento tengo una notebook con lcd 13.3 que se me rompio, compre uno que a simple vista es igual pero resulto que no lo era porque tiene distintas conecciones, decime que necesito pasarte para que me ayudes los modelos de las pantallas son:
ResponderEliminarla numeracion de la pantalla lcd que traia la maquina es N133l1-L01
yo compre una LTD133EX2X pero puedo ver la imagen de windows y la maquina levanta lo mas bien, lo unico que veo es una pantalla blanca o sea esta iluminada pero nada mas. Gracias por tu tiempo y ayuda, saludos
Si lees el artículo te darás cuenta que de lo que aquí hablo es sobre un módulo LCD microcontrolado y tú te refieres a una pantalla de portátil, son dos cosas diferentes.
ResponderEliminarSaludos.
tengo un duda con respeto a la alimentacion del modulo lcd, es necesario alimentarla con un fuente independiente a la de pic o se puede hacer con las misma ????
ResponderEliminarPuede ser la misma ya que ambos trabajan a 5 VDC.
ResponderEliminarSaludos.
Excelente blog, lo estoy leyendo profundamente!
ResponderEliminar