Subversion Repositories FlightCtrl

Compare Revisions

Ignore whitespace Rev 460 → Rev 461

/branches/v0.60_MicroMag3_Nick666/analog.c
21,6 → 21,7
volatile int tmpLuftdruck;
volatile unsigned int ZaehlMessungen = 0;
 
 
//#######################################################################################
//
void ADC_Init(void)
31,10 → 32,19
//Free Running Mode, Division Factor 128, Interrupt on
}
 
 
//#######################################################################################
//
void SucheLuftruckOffset(void)
//#######################################################################################
{
unsigned int off;
for(off=0; off < 250;off++)
off = eeprom_read_byte(&EEPromArray[EEPROM_ADR_LAST_OFFSET]);
if(off > 20) off -= 10;
OCR0A = off;
Delay_ms(100);
if(MessLuftdruck < 850) off = 0;
for(; off < 250;off++)
{
OCR0A = off;
Delay_ms(50);
41,8 → 51,9
printf(".");
if(MessLuftdruck < 900) break;
}
DruckOffsetSetting = off;
Delay_ms(200);
eeprom_write_byte(&EEPromArray[EEPROM_ADR_LAST_OFFSET], off);
DruckOffsetSetting = off;
Delay_ms(200);
}
 
 
116,20 → 127,9
messanzahl_AccHoch = 1;
Aktuell_az = ADC;
Mess_Integral_Hoch += accumulate_AccHoch; // Integrieren
Mess_Integral_Hoch -= Mess_Integral_Hoch / 1024; // dämfen
// Mess_Integral_Hoch -= Mess_Integral_Hoch / 512; // dämfen
/* if(EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG)
{
kanal = 3;
state = 7;
}
else
{
kanal = 0;
state = 0;
}*/
kanal = 3;
state = 7;
Mess_Integral_Hoch -= Mess_Integral_Hoch / 1024; // dämpfen
kanal = 3;
state = 7;
break;
case 7:
tmpLuftdruck += ADC;