Subversion Repositories FlightCtrl

Compare Revisions

Ignore whitespace Rev 1872 → Rev 1947

/branches/dongfang_FC_rewrite/analog.c
502,7 → 502,7
 
// determine gyro bias by averaging (requires that the copter does not rotate around any axis!)
for (i = 0; i < GYRO_OFFSET_CYCLES; i++) {
Delay_ms_Mess(20);
delay_ms_Mess(20);
for (axis = PITCH; axis <= YAW; axis++) {
deltaOffsets[axis] += rawGyroSum[axis];
}
524,7 → 524,7
// airPressureSum = simpleAirPressure * (AIRPRESSURE_SUMMATION_FACTOR/2);
// pressureMeasurementCount = 0;
 
Delay_ms_Mess(100);
delay_ms_Mess(100);
}
 
/*
542,7 → 542,7
// int16_t pressureDiff, savedRawAirPressure;
 
for (i = 0; i < ACC_OFFSET_CYCLES; i++) {
Delay_ms_Mess(10);
delay_ms_Mess(10);
for (axis = PITCH; axis <= YAW; axis++) {
deltaOffset[axis] += acc[axis];
}
565,13 → 565,13
 
// Setting offset values has an influence in the analog.c ISR
// Therefore run measurement for 100ms to achive stable readings
Delay_ms_Mess(100);
delay_ms_Mess(100);
 
// Set the feedback so that air pressure ends up in the middle of the range.
// (raw pressure high --> OCR0A also high...)
/*
OCR0A += ((rawAirPressure - 1024) / rangewidth) - 1;
Delay_ms_Mess(1000);
delay_ms_Mess(1000);
 
pressureDiff = 0;
// DebugOut.Analog[16] = rawAirPressure;
580,12 → 580,12
for (i=0; i<PRESSURE_CAL_CYCLE_COUNT; i++) {
savedRawAirPressure = rawAirPressure;
OCR0A+=2;
Delay_ms_Mess(500);
delay_ms_Mess(500);
// raw pressure will decrease.
pressureDiff += (savedRawAirPressure - rawAirPressure);
savedRawAirPressure = rawAirPressure;
OCR0A-=2;
Delay_ms_Mess(500);
delay_ms_Mess(500);
// raw pressure will increase.
pressureDiff += (rawAirPressure - savedRawAirPressure);
}