void background(){ readDatalink(); time = getUTCTime(); writeDatalink(DATALINK_SEND_FREQUENCY); outboundBufferMaintenance(); inboundBufferMaintenance(); }
void dearmVehicle(){ int i = 1; for (i = 1; i <= NUM_CHANNELS; i++){ setPWM(i, MIN_PWM); } setProgramStatus(UNARMED); p_priority numPacket = PRIORITY1; while (!vehicleArmed){ imuCommunication(); asm("CLRWDT"); writeDatalink(numPacket%3); //TODO: Change this for multiple packets readDatalink(); inboundBufferMaintenance(); outboundBufferMaintenance(); Delay(200); asm("CLRWDT"); numPacket = (numPacket + 1) % 3; } setProgramStatus(MAIN_EXECUTION); }
void initialization(int* outputSignal){ setPWM(THROTTLE_OUT_CHANNEL, MIN_PWM); p_priority numPacket = PRIORITY1; setProgramStatus(UNARMED); // char str[20]; // sprintf(str,"AM:%d, PM:%d",sizeof(AMData), sizeof(PMData)); // debug(str); while (!vehicleArmed){ imuCommunication(); checkDMA(); asm("CLRWDT"); writeDatalink(numPacket%3); readDatalink(); inboundBufferMaintenance(); outboundBufferMaintenance(); asm("CLRWDT"); Delay(200); asm("CLRWDT"); numPacket = (numPacket + 1) % 3; } }