Autor Tema: Libreria full LCD para CCS  (Leído 16280 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado gaston

  • PIC12
  • **
  • Mensajes: 77
Libreria full LCD para CCS
« en: 10 de Diciembre de 2008, 16:21:27 »
Hola amigos como estan,

decido preguntarles a uds. como cuernos solucionar el tema de cositas especiales en las LCDs,

todos usamos la libreria par aLCD del CCS o la flex_lcd que en el foro anda dando vueltas, pero ellas, si bien resuelven muchas cosas, no resuelven algunas como ser:

Impresion en video Inverso - es decir todo el fondo en negritas y las letras en blanco.
curso underline parpadeando

estas dos opciones las necesito para poder mostrar donde se encuentra el cursor.

Decidi entonces ver de agregar estas opciones a las librerias, partiendo de los comandos propios de las LCDs compatibles Hitachi, pero por ningun lado consegui el set de comandos de ella

alguien me puede tirar una soga???

muchas gracias y saludos a todos

Desconectado tithanae

  • PIC16
  • ***
  • Mensajes: 107
Re: Libreria full LCD para CCS
« Respuesta #1 en: 10 de Diciembre de 2008, 17:02:50 »
aqui estan los comandos de los lcd compatibles con el controlador de hitachi el pdf es un manual completo los comandos estan en la pagina 30 y el .doc es un resumen de los comandos ojala te sirva

Desconectado gaston

  • PIC12
  • **
  • Mensajes: 77
Re: Libreria full LCD para CCS
« Respuesta #2 en: 11 de Diciembre de 2008, 12:47:07 »
Muchas gracias tithanae  voy a revisar la documentacion, seguro que me sirve

si consigo mejorar la libreria la subo aqui para compartirla con todos

un abrazo y gracias de nuevo

Desconectado tithanae

  • PIC16
  • ***
  • Mensajes: 107
Re: Libreria full LCD para CCS
« Respuesta #3 en: 12 de Diciembre de 2008, 14:14:12 »
estare esperando tu libreria  :lol: :lol:

Desconectado Cryn

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4169
Re: Libreria full LCD para CCS
« Respuesta #4 en: 12 de Diciembre de 2008, 14:56:23 »
me adhiero a la espera, porque siempre creí que podrían haber más instrucciones

tithanae, el .doc esta en blanco :(
.

Desconectado gaston

  • PIC12
  • **
  • Mensajes: 77
Re: Libreria full LCD para CCS
« Respuesta #5 en: 13 de Diciembre de 2008, 16:40:14 »
Hola a todos,
la documentacion esta muy completa, y estan ahi los comandos necesarios para actuar sobre el micro de la LCD.
Ahora bien en ningun lado veo como hacer para que ella pasa a modo video inverso, es decir el fondo negro y los caracteres en blanco.

No obstante una libreria para LCD provista por Mikroelectronika - www.mikroe.com - para su compilador C, incluye dicho comando, y lo probe y funciona muy bien.

No obstante este desarrollo lo estoy haciendo en CCS C y necesito esa funcion,

Pense tambien que la LCD podria tener en su memoria el set de caracteres ASCII en video inverso, pero no la veo en la completa doc. del pdf que tenenos

Alguna otra idea?

Desconectado MGLSOFT

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 7744
Re: Libreria full LCD para CCS
« Respuesta #6 en: 13 de Diciembre de 2008, 18:33:44 »
Prueba compilar ese ejemplo con MikroC y luego abrir el assembler que genera, a ver si se puede extraer la funcionalidad para usarla en CCS.

Podrias poner un ejemplo compilado en MikroC y su simulacion en Proteus asi lo vemos y podemos ayudarte??
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado AKENAFAB

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 3045
    • Automation Media Lab
Re: Libreria full LCD para CCS
« Respuesta #7 en: 14 de Diciembre de 2008, 00:12:49 »
Yo tengo una libreria muy burda xD del LCD , pero en ASM.

Ahi si puedo manejar las demás instruccions del cursor,blink,rotar,etc..

Lo que no recuerdo es lo que dicen de aparecer las letras en blanco con fondo negro.No se si venga en el set XD.


LCDLinea1    EQU 0x80 ; 0,0  (posicion,linea)
LCDLinea2    EQU 0xC0 ; 0,1
LCDCLR       EQU 0x01 ; Borra pantalla 0,0
LCDhome      EQU 0x02 ; 0,0
LCDInc       EQU 0x06 ; Modo incrementa cursor
LCDDec      EQU 0x04 ; Modo decrementa cursor
LCDOn      EQU 0x0C ; Pantalla On
LCDOff       EQU 0x08 ; Pantalla Off
CursOn       EQU 0x0E ; Pantalla On, cursor On
CursOff    EQU 0x0C ; Pantalla On, cursor Off
CursBlink    EQU 0x0F ; Pantalla On, Cursor blinking
LCDIzda    EQU 0x10 ; Mueve cursor a la izquierda
LCDDecha    EQU 0x14 ; Mueve cursor a la derecha
LCDFuncion   EQU 0x38 ; Inicializa registro función
LCDCGRAM    EQU 0x40 ; Dir CGRAM

LCD_4b      EQU   0X20 ; LCD MODE 4 BITS

;-------------------------

Un saludo!
« Última modificación: 16 de Diciembre de 2008, 00:20:47 por AKENAFAB »

Desconectado gaston

  • PIC12
  • **
  • Mensajes: 77
Re: Libreria full LCD para CCS
« Respuesta #8 en: 15 de Diciembre de 2008, 10:07:11 »
Gracias a todos por los cometnarios,

Seria bueno lo que pide Mglsof, en el fin de semana busque la aplicacion, no la encontre, es que hice algo de eso como practica en enero pasado, hace ya bastante, y en verdad no lo hice mas que con un fin educativo,
siempre habia programado los micros en assemble y queria pasar a C, pero no decidia cual compilador usar, por eso probe entre ellos al de Mikroe. Finalmente con la ayuda del foro, decidi adiptar al CCS C, y descarte de llano al Mikroe C junto a otros.

Hoy me surge la inquietud en una aplicacion que permite activar cargas electricas en distintas horas del dia y en los disitntos dias de la semana, cosas que se definen en un sector de configuraion de la aplicacion,

es por esto que en la LCD en un momento - cuando debemos seleccionar que dias de la semana se activan dichas cargas - tenemos algo mas o menos asi:

L M M J V S D
N N N N N N N

Asi figura el default, con un pequeño teclado, recorremos la ptantalla y podemos cambiar la opcion del dia, es decir por ejemplo

L M M J V S D
S N S N S N S

donde solo se activan las salidas del micro - el Lunes, Miercoles, viernes y domingo  - esto es a modo de ejemplo.

Bueno la idea es poder poner en video inverso la letra de configuracion del dia que estamos configurando por ejemplo

L M M J V S D
S N S N N N N

Aqui al estar sobre la N debajo de la J del Jueves, dicha N deberia ser blanca con fondo negro, anunciando que justamente estamos configurando ese dia.

No se si me explico -

no encuentro como hacer eso desde los comandos de la LCD, pero si lo encontramos, facilmente lo podemos meter en la flexLCD

gracias a todos





Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4575
Re: Libreria full LCD para CCS
« Respuesta #9 en: 15 de Diciembre de 2008, 13:00:41 »
Hola.

Lo que yo hice para que la libreria de la LCD me acepte comandos (los del pdf de la controladora) es definir una funcion en la libreria:

Código: C#
  1. void lcd_command(byte cmd)
  2. {
  3.         lcd_send_byte(0, cmd);
  4. }
  5.  
  6.  

Y al inicio de la libreria puse los #define correspondientes:

Código: C#
  1. #define LCD_OFF                 0x08
  2. #define CURSOR_ON               0x0E
  3. #define CURSOR_OFF              0x0C
  4. #define BLINK_ON                0x0D
  5. #define BLINK_OFF               0x0C
  6. #define SHIFT_LEFT              0x1C
  7. #define SHIFT_RIGHT             0x18
  8. #define CURSOR_RIGHT    0x14
  9. #define CURSOR_LEFT             0x10
  10. #define CGRAM                   0x40
  11. #define DDRAM                   0x80
  12.  


Si lo que se quiere es el texto inverso, seria implementar algun flag de aviso de que letra se va pasar a modo inverso y usar la CGRAM para generar ese caracter, obviamente tendria que haber un .h con las definiciones de las letras en modo inverso.

Saludos.
El papel lo aguanta todo

Desconectado gaston

  • PIC12
  • **
  • Mensajes: 77
Re: Libreria full LCD para CCS
« Respuesta #10 en: 15 de Diciembre de 2008, 19:26:24 »
Muy claro MLO
por lo tanto nos confirmas que no existe un comando de la LCD que pasa el texto a modo inverso
y por otro lado no existe cargada dentro de ella de ninguna forma los caracteres en inverso tal lo que dice el PDF

por lo tanto no queda otra que personalizar los caracteres a inverso y cargalarlos como personalizados.

Esto, esta bien para solucionar mi inconveniente y la verdad lo agradezco mucho

pero como el espiritu de este post tambien era tratar de mejorar la libreria flex_lcd, por ahi podriamos estudiar incluir la funcion de MLO dentro de ella, permitiendonos ejecutar comandos diretos de la LCD desde el codigo C


voy a hacer algunas pruebas y les cuento

si alguien tiene mas aoprtes bienvenidos  :-/ :-/

Desconectado Marttyn

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1768
    • IDEAA
Re: Libreria full LCD para CCS
« Respuesta #11 en: 18 de Diciembre de 2008, 11:16:13 »
Me parece que por mucho que modifiques la libreria no conseguiras lo que quieres, ya que las letras y simbolos ya estan cargados dentro del LCD, o mejor dicho del controlador hitachi que trae. Cualquier cosa que quieras mostrar en el LCD que no este cargado tendras que hacerlo con la CGRAM. Una letra en modo inverso no esta cargada dentro del controlador, asi que supongo que te tocara crearla.
Lo malo de la CGRAM es que creo que se pueden definir 8 caracteres nada mas.
Pero piensa que tienes una ventaja, solo necesitas la "S" y la "N" en modo inverso.
Igualmente si que es interesante poder representar texto en modo inverso sin tener que recurrir a la limitada CGRAM, ya que si quisieramos hacer lo mismo con numeros ya no seria posible. Asi que si lo consigues no olvides postearlo!  :mrgreen:

PS: lo que no se es si puedes cargar y descargar la CGRAM "al vuelo" con los simbolos que te interesen. Pero igualmente habria que crear todas las letras, numeros y simbolos ex profeso y meterlas dentro de una memoria externa, porque no creo que quepan en la memoria del programa  :?
La gente ve las cosas que existen y se pregunta por qué.
Yo prefiero imaginar lo que no existe y preguntarme por qué no.

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4575
Re: Libreria full LCD para CCS
« Respuesta #12 en: 18 de Diciembre de 2008, 11:34:43 »
Es exactamente lo que postee anteriormente, pero mas explicadillo jeje  :mrgreen:
El papel lo aguanta todo

Desconectado Marttyn

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1768
    • IDEAA
Re: Libreria full LCD para CCS
« Respuesta #13 en: 18 de Diciembre de 2008, 11:39:57 »
 :o
Eso me pasa por no leerme el post entero.
Bueno, al menos ahora se que si es posible hacerlo  :-/
La gente ve las cosas que existen y se pregunta por qué.
Yo prefiero imaginar lo que no existe y preguntarme por qué no.

Desconectado AKENAFAB

  • Colaborador
  • DsPIC30
  • *****
  • Mensajes: 3045
    • Automation Media Lab
Re: Libreria full LCD para CCS
« Respuesta #14 en: 19 de Diciembre de 2008, 00:12:41 »
Yo no creo que fuera muy rápido ese lcd  escribiendo a cada rato para cargar los caracteres en la cgram.

Lo que si veo con buenos ojos es implementar las demas caracteristicas de estos lcds en la libreria.


Un saludo!