Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: Danikin en 17 de Noviembre de 2006, 21:21:36
Título: Ayuda con delay!!
Publicado por: Danikin en 17 de Noviembre de 2006, 21:21:36
Holas a todos soy nuevo en esto de la programacion y necesito su ayuda
estoy programando en C con el CCS y al usar el contador me va todo bien pero si le doy una condicion y luego le pongo un delay el programa no me funciona
Fijate que tenes que abrir y cerrar llaves en ciertos casos. Si usas un while, antes tiene que haber un do!
Saludos.
Título: Re: Ayuda con delay!!
Publicado por: vszener en 18 de Noviembre de 2006, 07:30:08
Como te ha indicado el amigo BrunoF, tienes que poner los corchetes '{ }' respectivos en cada condición o bucle siempre que la condición o el bucle en cuestón tenga más de una línea de código.
La solución que te ha dado el amigo BrunoF es totalmente válida, aunque si no quieres usar un bucle do-while, y quieres usar un bucle while sólamente, sería así:
Código: C
#INT_EXT void IntRB0(){
while(true){
i++;//incremento contador
if(i==18)
output_high(PIN_a0);
else
output_low(PIN_a0);
if(i>18)
i=0;
if(input(PIN_b1)){
output_high(PIN_a0);
delay_ms(500);
output_low(PIN_a0);
delay_ms(500);
}
}
}
Aunque digo yo una cosa, ¿para que quieres hacer un bucle infinito en la primera llamada de la interrupción externa? cuando se produzca la ejecución de dicha función de interrupción, ya no saldrá más de esa porción de código
PD: A no ser que tengas otras funciones de interrupción.... :shock:
Suerte!!! ;)
Título: Re: Ayuda con delay!!
Publicado por: Danikin en 20 de Noviembre de 2006, 21:49:21
mm es que en realidad no se mucho de esto, solo intente usar las interrupciones para un conteo pero en realidad lo que necesito es que este conteo sea solo para otras condiciones de entradas y salidas
les agradesco mucho la ayuda :-) :)
Título: Re: Ayuda con delay!!
Publicado por: vszener en 21 de Noviembre de 2006, 12:59:27
Mirate el post de Indice de Hilos Destacados en el sub-Foro de C para Microcontroladores. (http://www.todopic.com.ar/foros/index.php?topic=14634.0)