in the main.c
while (1) /* This loop will repeat indefinitely. */
{
#ifdef _SIMULATOR
statusflag.NEW_SPI_DATA = 1;
#endifif (statusflag.NEW_SPI_DATA) /* 26.2ms loop area */ { /* I'm slow! I only execute every 26.2ms because */ /* that's how fast the Master uP gives me data. */ Process_Data_From_Master_uP(); /* You edit this in user_routines.c */ if (autonomous_mode) /* DO NOT CHANGE! */ { User_Autonomous_Code(); /* You edit this in user_routines_fast.c */ } } Process_Data_From_Local_IO(); /* You edit this in user_routines_fast.c */ /* I'm fast! I execute during every loop.*/
} /* while (1) */
shouldn’t it be
if(autonomous_mode)
{
User_Autonomous_Code();
}
else
{
Process_Data_From_Master_uP();
}
otherwise it will be executing Process_Data_From_Master_uP() and then User_Autonomous_Code() in auton, every loop, thus eating up a lot of processor time.