Hola, estoy haciendo un proyecto para mi clase de software integrado de introducción y necesito hacer uso de un temporizador en un programa. Si no me equivoco, este código debería estar en bucle durante al menos 500 milisegundos, pero no está funcionando y ¡nunca lo he hecho antes en un PIC! Puede haber un problema con los tipos de datos en el cálculo para la conversión de ms.
¡La ayuda sería increíble!
#define CLOCKS_PER_SEC 8000000 //Clock set to 8MHz
#include <time.h>
#include <stdlib.h>
int main (void)
{
//Used to keep track of timer
unsigned long delta_time, init_time, final_time;
init_time=clock(); //Take initial clock reading
delta_t=0;
while(delta_t < 500)
{
//do tasks
final_time=clock(); // returns total number of clocks
delta_t= final - initial; //Calculates total clocks between final and initial
// converts to ms
delta_t = (unsigned long)((delta_t/(CLOCKS_PER_SEC*1.0))*1000;
}
}