TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: DarkVect en 27 de Octubre de 2006, 15:13:16
-
Me refiero a que si un código se va repitiendo infinitamente en el PIC ¿?
He compilado y probado esto:
#include <16LF84A.h> //pic a utilizar
#fuses XT, NOWDT, NOPROTECT, PUT //ordenes para el programador
#use delay (clock=3276800) //Fosc=3,2768Mhz
#use fast_io(a)
#use fast_io(b)
void main(void)
{
int i=0;
disable_interrupts(INT_RB); //deshabilitar interrupcion portb
disable_interrupts(INT_EEPROM); //deshabilitar interrupcion EEPROM
disable_interrupts(INT_EXT); //interrupcion del reed del anemo
disable_interrupts(INT_TIMER0); //interrupcion del contador
disable_interrupts(GLOBAL); //interrupciones activadas
port_b_pullups(FALSE); //pullups portb desactivadas
set_tris_a(0b00000000); //porta todo como salida
set_tris_b(0b00000001); //portb todo como salida menos RB0
output_high(PIN_A0);
delay_ms(500);
output_low(PIN_A0);
delay_ms(500);
}
Y el LED se enciende y apaga sin parar. No debería hacerlo una vez sólo o la ejecución es un bucle infinito por defecto??
Normalmente después de la configuración, en los ejemplos, se pone un While(TRUE){...} de forma que aunque sea un bucle infinito para todo el código, sólo se reproduce la parte del While, es así realmente??
Gracias!!
-
Tengo entendido que si haces un programa que finaliza, como el tuyo, el PIC vuelve al vector de reset al terminar, por lo que recomienza la ejecución.
-
Ahhh!!! Menos mal que me has dado una respuesta.
Gracias!!