TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: Panter001 en 14 de Noviembre de 2007, 19:32:59

Título: LCD
Publicado por: Panter001 en 14 de Noviembre de 2007, 19:32:59
Hola en el LCd me esta apareciendo lo siguiente   25    $

este es el codigo :

Char valww[2];

void main() {

   while(TRUE) {

      if(kbhit()){
         gets(valww);
         Imprimir_LCD();
      }

      if(!input(PIN_A3)){
         puts("25");
      }
   }
}

y en programa cuando llamo a <flex_lcd.c>

printf(lcd_putc,"%s",valww);

por que me aparece el signo $ si no lo estoy mandando

muchas gracias.
Título: Re: LCD
Publicado por: MGLSOFT en 15 de Noviembre de 2007, 00:18:45
que hace la funcion Imprimir_LCD()  ???
Título: Re: LCD
Publicado por: Panter001 en 15 de Noviembre de 2007, 20:55:19
void Imprimir_LCD(void)
{
   char y=1;             
   signed char x=1;         

   lcd_init();           
   while(TRUE){     
      lcd_gotoxy(x,y);     
      printf(lcd_putc,"%s",valww);
      delay_ms(50);
      lcd_putc("\f");
      x++;             
      if(x>16){           
         x=-8;           
         y++;           
         if(y>2)           
            y=1;         
         }
      lcd_putc("\f") ;     



      }           

}
Título: Re: LCD
Publicado por: MGLSOFT en 15 de Noviembre de 2007, 21:13:24
Es muy probable que la linea RX del modulo USART este en alto o en bajo y malinterprete lo que recibe, o tal vez este mal configurado uno de los extremos , tanto el software del PIC como del PC puede estar configurado diferente uno del otro, por ejemplo 8N1 en el PIC y 8E1 en el PC, por ejemplo... :mrgreen: