Autor Tema: duda sobre declaracion de puertos en ccs  (Leído 3173 veces)

0 Usuarios y 3 Visitantes están viendo este tema.

Desconectado spaceluis

  • PIC10
  • *
  • Mensajes: 42
duda sobre declaracion de puertos en ccs
« 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.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: duda sobre declaracion de puertos en ccs
« Respuesta #1 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.

Desconectado rivale

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1707
Re: duda sobre declaracion de puertos en ccs
« Respuesta #2 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.
"Nada es imposible, no si puedes imaginarlo"

Desconectado darck_khronos

  • PIC18
  • ****
  • Mensajes: 493
Re: duda sobre declaracion de puertos en ccs
« Respuesta #3 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?

Desconectado spaceluis

  • PIC10
  • *
  • Mensajes: 42
Re: duda sobre declaracion de puertos en ccs
« Respuesta #4 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

Desconectado darck_khronos

  • PIC18
  • ****
  • Mensajes: 493
Re: duda sobre declaracion de puertos en ccs
« Respuesta #5 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


 

anything