Subversion Repositories FlightCtrl

Compare Revisions

Ignore whitespace Rev 2142 → Rev 2143

/branches/dongfang_FC_fixedwing/flight.c
57,6 → 57,42
}
}
 
// min = 10 max = 12, speed = 11 shold make 50/50 cycle.
void updateAirspeedIndicatorLEDs(void) {
static uint8_t flashPrescaler = 0;
static uint8_t flashCnt = 0;
 
flashPrescaler++;
if (flashPrescaler == 10) {
flashPrescaler = 0;
 
if (airspeedVelocity <= staticParams.minFlashAirspeed) {
debugOut.digital[0] &= ~DEBUG_AIRSPEED;
debugOut.digital[1] &= ~DEBUG_AIRSPEED;
return;
}
if (airspeedVelocity >= staticParams.maxFlashAirspeed) {
debugOut.digital[0] |= DEBUG_AIRSPEED;
debugOut.digital[1] |= DEBUG_AIRSPEED;
return;
}
 
uint8_t span = staticParams.maxFlashAirspeed - staticParams.minFlashAirspeed; // is 2
uint8_t speed = airspeedVelocity - staticParams.minFlashAirspeed; // is 1
 
if (flashCnt > speed) {
debugOut.digital[0] &= ~DEBUG_AIRSPEED;
debugOut.digital[1] &= ~DEBUG_AIRSPEED;
} else {
debugOut.digital[0] |= DEBUG_AIRSPEED;
debugOut.digital[1] |= DEBUG_AIRSPEED;
}
 
flashCnt++;
if (flashCnt >= span) flashCnt = 0;
}
}
 
// Normal at airspeed = 10.
uint8_t calcAirspeedPID(uint8_t pid) {
if (!(staticParams.bitConfig & CFG_USE_AIRSPEED_PID)) {