TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: marvicdigital en 25 de Agosto de 2010, 08:53:44

Título: LCD 4x20 Libreria CCS
Publicado por: marvicdigital en 25 de Agosto de 2010, 08:53:44
Tengo una inquietud, estoy usando un LCD 4x20 y leyendo la librería con la que viene el programa veo que hay que poner algo de más en el main.c para que habilite la función de lcd_gotoxy(1,4) (por ejemplo) o para hacerlo multilinea en mi caso de 4 lineas ..que debo hacer, ya que solo me habilita 2 lineas en el LCD. Gracias por la ayuda y me perdonan mi "falta de ignorancia"  :D apenas estoy comenzando con C en PIC.

saludos
Título: Re: LCD 4x20 Libreria CCS
Publicado por: marvicdigital en 25 de Agosto de 2010, 09:49:33
Leyendo y aprendiendo me he enterado de algunas cosas  :mrgreen:  ..
Pongo el código que llevo de ejemplo:

Código: C
  1. #define LCD_EXTENDED_NEWLINE 4
  2. #define LCD_LINE_LENGTH 20
  3.  
  4. #include <lcd.c>
  5. void main()
  6. {
  7.    lcd_init();
  8.  
  9.    //char k;
  10.    
  11.    lcd_putc("\fReady...\n");
  12.    lcd_putc("HOLA MUNDO");
  13.    g_LcdX=3;
  14.    g_LcdY=3;
  15.    lcd_putc("ESTO ES UN LCD DE");
  16.    lcd_gotoxy(8,4);
  17.    lcd_putc("4X20");
  18.    /*while (TRUE) {
  19.       k=kbd_getc();
  20.       if(k!=0)
  21.         if(k=='*')
  22.           lcd_putc('\f');
  23.         else
  24.           lcd_putc(k);
  25.    }*/
  26.  
  27.  
  28.    setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
  29.    setup_timer_1(T1_DISABLED);
  30.    setup_timer_2(T2_DISABLED,0,1);
  31.    setup_ccp1(CCP_OFF);
  32.    setup_comparator(NC_NC_NC_NC);
  33.    enable_interrupts(INT_TBE);
  34.    enable_interrupts(INT_RDA);
  35.    enable_interrupts(GLOBAL);
  36.  
  37.    //TODO: User Code
  38.  
  39. }

Lo compilo no hay errores, pero al probarlo en el hardware el LCD me muestra la primera fila bien, la segunda me mezcla la linea 2 con la 4;la linea 3 está vacía y en la 4 me sale parte del texto de la linea 3  :D...como debo usar los punteros x,y para este LCD o que debo configurar más para que me funcione bien..ojala halla una respuesta mientras llevo a mi hija a la escuela  :lol:

Saludos

Título: Re: LCD 4x20 Libreria CCS
Publicado por: bmb en 25 de Agosto de 2010, 10:04:28
Hola marvicdigital, te cuento que he utilizado esta librería sin ningún problema para lcd's de 4x20: Flex_LCD_4x2 (http://www.ccsinfo.com/forum/viewtopic.php?t=28268) del foro de CCS.

Saludos!
Título: Re: LCD 4x20 Libreria CCS
Publicado por: marvicdigital en 25 de Agosto de 2010, 11:46:39
Hola marvicdigital, te cuento que he utilizado esta librería sin ningún problema para lcd's de 4x20: Flex_LCD_4x2 (http://www.ccsinfo.com/forum/viewtopic.php?t=28268) del foro de CCS.

Saludos!

Gracias compatriota, la librería la estuve leyendo, pero la que quiero entender bien y aplicarla a mi estudio es la que viene con le CCS..voy a seguir investigando para ver que es lo queme hace falta o que errores estoy cometiendo.

Gracias

Saludos
Título: Re: LCD 4x20 Libreria CCS
Publicado por: bigluis en 25 de Agosto de 2010, 12:55:16
Hola Marvicdigital.

He observado tu código y al parecer estas utilizando la libreria incorrecta es decir debes cambiar la linea

Código: C++
  1. #include <lcd.c>

Por la linea

Código: C++
  1. #include <lcd420.c>

yo estoy usando la version 4.104 de CCS