Subversion Repositories FlightCtrl

Compare Revisions

Ignore whitespace Rev 2259 → Rev 2260

/test_branches/FC2_2/analog.c
343,10 → 343,10
MessLuftdruck = ADC;
result[messanzahl_Druck] = MessLuftdruck - 523 * (long)ExpandBaro; // -523 counts per offset step
messanzahl_Druck = (messanzahl_Druck + 1)&(15);
J17_ON; //Qopter: testweise zur Rechenzeitmessung
//J17_ON; //Qopter: testweise zur Rechenzeitmessung
tmpLuftdruck = 0;
for(int j=0;j<16;j++) {tmpLuftdruck+=result[j];}
J17_OFF;
//J17_OFF;
// Luftdruck = tmpLuftdruck;
Luftdruck = (15 * Luftdruck + tmpLuftdruck) / 16; // noise reduction
HoehenWert = StartLuftdruck - Luftdruck;
/test_branches/FC2_2/eeprom.h
90,6 → 90,11
#define CFG0_AXIS_COUPLING_ACTIVE 0x40
#define CFG0_ROTARY_RATE_LIMITER 0x80
 
// bitcoding for EE_Parameter.ServoCompInvert
#define SERVO_NICK_INV 0x01
#define SERVO_ROLL_INV 0x02
#define SERVO_RELATIVE 0x04 // direct poti control or relative moving of the servo value
 
// defines for the receiver selection
#define RECEIVER_PPM 0
#define RECEIVER_SPEKTRUM 1
/test_branches/FC2_2/fc.c
373,8 → 373,12
{
DDRD |=0x80; // enable J7 -> Servo signal
}
else NickServoValue = (128 * 4 * 16); // neutral position
 
else
{
if(EE_Parameter.ServoCompInvert & SERVO_NICK_INV) NickServoValue = ((128 + 60) * 4 * 16); // neutral position = upper 1/4
else NickServoValue = ((128 - 60) * 4 * 16); // neutral position = lower 1/4
}
if((AdNeutralNick < 150 * 16) || (AdNeutralNick > 850 * 16)) { VersionInfo.HardwareError[0] |= FC_ERROR0_GYRO_NICK; };
if((AdNeutralRoll < 150 * 16) || (AdNeutralRoll > 850 * 16)) { VersionInfo.HardwareError[0] |= FC_ERROR0_GYRO_ROLL; };
if((AdNeutralGier < 150 * 2) || (AdNeutralGier > 850 * 2)) { VersionInfo.HardwareError[0] |= FC_ERROR0_GYRO_YAW; };
1120,11 → 1124,13
tmp_long /= 2;
tmp_long2 /= 2;
}
/*
if(abs(PPM_in[EE_Parameter.Kanalbelegung[K_GIER]]) > 25)
{
tmp_long /= 3;
tmp_long2 /= 3;
}
*/
if(tmp_long > (long) FromNaviCtrl_Value.Kalman_MaxFusion) tmp_long = (long) FromNaviCtrl_Value.Kalman_MaxFusion;
if(tmp_long < (long)-FromNaviCtrl_Value.Kalman_MaxFusion) tmp_long = (long)-FromNaviCtrl_Value.Kalman_MaxFusion;
if(tmp_long2 > (long) FromNaviCtrl_Value.Kalman_MaxFusion) tmp_long2 = (long) FromNaviCtrl_Value.Kalman_MaxFusion;
1607,7 → 1613,7
else
if(FC_StatusFlags & (FC_STATUS_VARIO_TRIM_UP|FC_STATUS_VARIO_TRIM_DOWN))
{
if(!WaypointTrimming) LIMIT_MIN_MAX(SollHoehe, (HoehenWert-200), (HoehenWert+200)) // max. 2m Unterschied
if(!WaypointTrimming) LIMIT_MIN_MAX(SollHoehe, (HoehenWertF-200), (HoehenWertF+200)) // max. 2m Unterschied
else WaypointTrimming = 0;
FC_StatusFlags &= ~(FC_STATUS_VARIO_TRIM_UP|FC_STATUS_VARIO_TRIM_DOWN);
HeightTrimming = 0;
/test_branches/FC2_2/timer0.c
70,10 → 70,6
volatile int16_t ServoNickValue = 0;
volatile int16_t ServoRollValue = 0;
 
// bitcoding for EE_Parameter.ServoCompInvert
#define SERVO_NICK_INV 0x01
#define SERVO_ROLL_INV 0x02
#define SERVO_RELATIVE 0x04 // direct poti control or relative moving of the servo value
 
enum {
STOP = 0,
/test_branches/FC2_2/uart.c
120,7 → 120,7
"Height Value ", //5
"AccZ ",
"Gas ",
"Compass Value ",
"AdWertAccHoch ",
"Voltage [0.1V] ",
"Receiver Level ", //10
"Gyro Compass ",
131,7 → 131,7
"Variance ",
"vv ",
"HoehenWertF ",
"19 ",
"19 ACC-Parameter",
"Servo ", //20
"Hovergas ",
"Current [0.1A] ",