TODOPIC

Microcontroladores PIC => Primeros pasos - Iniciación a los microcontroladores => Mensaje iniciado por: spaceluis en 14 de Junio de 2012, 01:24:50

Título: duda sobre declaracion de puertos en ccs
Publicado por: spaceluis en 14 de Junio de 2012, 01:24:50
hola que tal tengo el siguiente codigo:

#include <16F877A.H>
#use delay (clock= 4000000)
#fuses HS,NOWDT
#use standard_IO (A)
#include <flex_lcd.c>


VOID MAIN ()
{
SET_TRIS_A(0x01);
lcd_init();
if(input(pin_A0)==1)
{
printf(lcd_putc,"hola mundo");
WHILE(input(pin_A0)==1);
}

}



lo unico que tiene que hacer el que cuando reciba un 1 en el puerto A0 imprima el mensaje..pero no lo hace alguien sabe si falta algo??.. o cual podria ser el motivo del error.
Título: Re: duda sobre declaracion de puertos en ccs
Publicado por: Nocturno en 14 de Junio de 2012, 01:26:57
Tu programa comprueba una sóla vez si el pin es 1 y luego termina. Esa condición será cierta sólo si al arrancar el PIC el pulsador está cerrado.
Mete el IF dentro de un bucle infinito y debería funcionar.
Título: Re: duda sobre declaracion de puertos en ccs
Publicado por: rivale en 14 de Junio de 2012, 10:44:51
Asi: ;-)

hola que tal tengo el siguiente codigo:

#include <16F877A.H>
#use delay (clock= 4000000)
#fuses HS,NOWDT
#use standard_IO (A)
#include <flex_lcd.c>


VOID MAIN ()
{
SET_TRIS_A(0x01);
lcd_init();
while(true)
{
if(input(pin_A0)==1)
{
printf(lcd_putc,"hola mundo");

}
}

}



lo unico que tiene que hacer el que cuando reciba un 1 en el puerto A0 imprima el mensaje..pero no lo hace alguien sabe si falta algo??.. o cual podria ser el motivo del error.
Título: Re: duda sobre declaracion de puertos en ccs
Publicado por: darck_khronos en 14 de Junio de 2012, 12:17:29
Si mas que estas mal en tus fusibles

Código: [Seleccionar]
#include <16F877A.H>
#use delay (clock= 4000000)
#fuses XT,NOWDT
#use standard_IO (A)
#include <flex_lcd.c>


VOID MAIN ()
{
 SET_TRIS_A(0x01);
 lcd_init();
 for(;;)
   {
     if(input(pin_A0)==1)
            printf(lcd_putc,"hola mundo");
     else
          lcd_putc("\f");
   }
}


Otra es que no se ve pero posiblemente ya modificaste o declaraste donde van los pines de la Flex LCD?
Título: Re: duda sobre declaracion de puertos en ccs
Publicado por: spaceluis en 15 de Junio de 2012, 15:54:13
Asi: ;-)

hola que tal tengo el siguiente codigo:

#include <16F877A.H>
#use delay (clock= 4000000)
#fuses HS,NOWDT
#use standard_IO (A)
#include <flex_lcd.c>


VOID MAIN ()
{
SET_TRIS_A(0x01);
lcd_init();
while(true)
{
if(input(pin_A0)==1)
{
printf(lcd_putc,"hola mundo");

}
}

}



lo unico que tiene que hacer el que cuando reciba un 1 en el puerto A0 imprima el mensaje..pero no lo hace alguien sabe si falta algo??.. o cual podria ser el motivo del error.



HEY GRACIAS POR LA AYUDA...FUE ERROR DE PRINCIPIANTE
Título: Re: duda sobre declaracion de puertos en ccs
Publicado por: darck_khronos en 15 de Junio de 2012, 16:03:04
Asi: ;-)

hola que tal tengo el siguiente codigo:

#include <16F877A.H>
#use delay (clock= 4000000)
#fuses HS,NOWDT
#use standard_IO (A)
#include <flex_lcd.c>


VOID MAIN ()
{
SET_TRIS_A(0x01);
lcd_init();
while(true)
{
if(input(pin_A0)==1)
{
printf(lcd_putc,"hola mundo");

}
}

}



lo unico que tiene que hacer el que cuando reciba un 1 en el puerto A0 imprima el mensaje..pero no lo hace alguien sabe si falta algo??.. o cual podria ser el motivo del error.



HEY GRACIAS POR LA AYUDA...FUE ERROR DE PRINCIPIANTE

aun asi es recomendable que quites el hs y pongas el xt