TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: dfalvardo en 18 de Octubre de 2015, 00:02:17

Título: LCD CON MICROCONTROLADOR
Publicado por: dfalvardo en 18 de Octubre de 2015, 00:02:17
BUENAS ES QUE ME GUSTARIA SABER COMO GRAFICAR EN UNA LCD 16X2
Título: Re:LCD CON MICROCONTROLADOR
Publicado por: KILLERJC en 18 de Octubre de 2015, 06:00:50
Por favor limitate a crear 1 solo mensaje por tema. Crear 2 mensajes y responder en otro lado no va a resultar en una respuesta mas rapida, o tener mejores resultados.

Ademas va en contra de las reglas del foro.
EDIT: Conteste mas abajo
Título: Re:LCD CON MICROCONTROLADOR
Publicado por: Chaly29 en 18 de Octubre de 2015, 06:07:37
Hola KILLERJC, como el otro mensaje no poseía respuestas, lo e eliminado.

dfalvardo te pido amablemente leas las reglas del foro, y en la manera de lo posible trata de respetarlas.

Y con respecto a tu pregunta, pues lo primero que deberías de indicar es en que lenguaje de programación estas trabajando.

Un saludo.

Atte. CARLOS.

Título: Re:LCD CON MICROCONTROLADOR
Publicado por: KILLERJC en 18 de Octubre de 2015, 06:10:33
xD yo habia contstado alli Chaly :P

Le habia preguntado varias cosas como:

- ¿Que tiene realizado?
- ¿Leyo el datasheet del driver del LCD? - Aqui esta la solucion a su problema
- ¿Sabe que driver posee el LCD?
- ¿Que compilador usa?
- ¿Librerias propias o del compilador?
- ¿Tiene alguna idea de que se le manda al LCD o directamente puso las funciones y funciono?
Título: Re:LCD CON MICROCONTROLADOR
Publicado por: dfalvardo en 23 de Octubre de 2015, 14:48:03
Si ya se las especificaciones de la lcd y lo que he leído es que hay que guardar los datos en la cgram pero no se como hacerlo en c18 con mplab
Título: Re:LCD CON MICROCONTROLADOR
Publicado por: KILLERJC en 24 de Octubre de 2015, 00:05:18
Como escribir la CGRAM es indiferente el lenguaje que uses. Ya que lo que importa es lo que le envias al LCD.

Si tu pregunta es : ¿Que funcion debo usar ?

Eso no te lo va a contestar nadie, por que no sabemos que "librerias" estas usando para manejar el LCD.
Te lo pregunte, pero no lo respondiste. Y aun asi si supiera la libreria deberia tener el codigo de la misma para saber que hace y decirte que usar. Ya que hay librerias de sobra por internet y podrias haber tomado cualquiera, o puede que venga con C18 pero aun asi no se las funciones que posee,etc.

Como escribir en la CGRAM ? es facil. Voy a suponer 2 cosas, la libreria es TUYA y de driver un HD44780
Mandas una instruccion (RS=0), que es el SET addres CGRAM, vamso a escribir por lo tanto R/W =0 tambien, la instruccion es 01aa aaaa, donde "a" es la direccion. Comenzamos en 0x00, por ende debes enviar un 0x40.

Luego de eso vas a escribir en la CGRAM, pero esta ves son datos, asi que RS = 1, el dato es de 8 bits a enviar, aunque solo se cargue una fila ( 5 bits ), recorda que cada caracter es de 5*7.
Cuando cargas el valor, automaticamente la direccion se incrementa. asi que envias uno detras de otro, ¿que enviar? este es un ejemplo de una flecha:

0 0 0 1 0 = 0x02 , 1 es el pixel en negro
0 0 1 1 0 = 0x06
0 1 1 1 0 = 0x0E
1 1 1 1 0
0 1 1 1 0
0 0 1 1 0
0 0 0 1 0
0 0 0 0 0

Son 7 datos a enviar por caracter, si es que es 5*7 obviamente.
Ya con eso grabaste tu CGRAM, luego para mostrarlo en el LCD haces lo mismo que haces siempre, seleccionas donde queres que comienze a escribir pero en ves de enviar una "a" o el simbolo por ejemplo, pedis por el valor hexadecimal "\x00" ( este seria el primer caracter de la CGRAM, \x01 el siguiente, etc), Solo tenes para almacenar 8 caracteres en la CGRAM si es de 5*7.

Si estas usando una libreria normalmente tienen algunas funciones como "enviar_instruccion" o "enviar_datos" y podrias usar eso, eso te va a llevar a leerte las librerias.