Subversion Repositories FlightCtrl

Rev

Rev 701 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 701 Rev 703
Line 3... Line 3...
3
#######################################################################################*/
3
#######################################################################################*/
Line 4... Line 4...
4
 
4
 
5
#ifndef _FC_H
5
#ifndef _FC_H
Line -... Line 6...
-
 
6
#define _FC_H
-
 
7
 
-
 
8
typedef struct
-
 
9
{
-
 
10
        uint8_t AirPressure_D;
-
 
11
        uint8_t MaxHight;
-
 
12
        uint8_t Hight_P;
-
 
13
        uint8_t Hight_ACC_Effect;
-
 
14
        uint8_t CompassYawEffect;
-
 
15
        uint8_t Gyro_P;
-
 
16
        uint8_t Gyro_I;
-
 
17
        uint8_t Gier_P;
-
 
18
        uint8_t I_Factor;
-
 
19
        uint8_t UserParam1;
-
 
20
        uint8_t UserParam2;
-
 
21
        uint8_t UserParam3;
-
 
22
        uint8_t UserParam4;
-
 
23
        uint8_t UserParam5;
-
 
24
        uint8_t UserParam6;
-
 
25
        uint8_t UserParam7;
-
 
26
        uint8_t UserParam8;
-
 
27
        uint8_t ServoPitchControl;
-
 
28
        uint8_t LoopGasLimit;
-
 
29
        uint8_t AchsKopplung1;
-
 
30
        uint8_t AchsGegenKopplung1;
-
 
31
        uint8_t DynamicStability;
6
#define _FC_H
32
} fc_param_t;
-
 
33
 
7
 
34
extern fc_param_t FCParam;
-
 
35
 
-
 
36
extern volatile uint16_t I2CTimeout;
8
extern volatile unsigned int I2CTimeout;
37
 
9
extern volatile long IntegralPitch,IntegralPitch2;
38
// attitude
-
 
39
extern volatile int32_t IntegralPitch, IntegralRoll, IntegralYaw;
-
 
40
extern volatile int16_t ReadingPitch, ReadingRoll, ReadingYaw;
10
extern volatile long IntegralRoll,IntegralRoll2;
41
 
11
extern volatile long Reading_IntegralPitch,Reading_IntegralPitch2;
42
// offsets
12
extern volatile long Reading_IntegralRoll,Reading_IntegralRoll2;
43
extern volatile int16_t AdNeutralPitch, AdNeutralRoll, AdNeutralYaw;
-
 
44
extern volatile int16_t NeutralAccX, NeutralAccY;
-
 
45
extern volatile float NeutralAccZ;
13
extern volatile long IntegralAccPitch,IntegralAccRoll;
46
 
-
 
47
 
-
 
48
extern volatile int32_t Reading_Integral_Top; // calculated in analog.c
14
extern volatile long Reading_Integral_Top;
49
 
15
extern volatile long Integral_Yaw,Reading_Integral_Yaw,Reading_Integral_Yaw2;
50
// compass navigation
16
extern volatile int  CompassHeading;
51
extern volatile int16_t  CompassHeading;
-
 
52
extern volatile int16_t  CompassCourse;
-
 
53
extern volatile int16_t  CompassOffCourse;
17
extern volatile int  CompassCourse;
54
 
18
extern volatile int  CompassOffCourse;
55
// hight control
-
 
56
extern int ReadingHight;
19
extern int ReadingHight;
57
extern int SetPointHight;
20
extern int SetPointHight;
-
 
21
extern volatile int16_t ReadingPitch,ReadingRoll,ReadingYaw;
58
 
-
 
59
// mean accelarations
22
extern volatile int AdNeutralPitch,AdNeutralRoll,AdNeutralYaw, Mean_AccPitch, Mean_AccRoll;
60
extern volatile int16_t Mean_AccPitch, Mean_AccRoll, Mean_AccTop;
23
extern volatile int NeutralAccX, NeutralAccY,Mean_AccTop;
61
 
-
 
62
// looping params
-
 
63
extern long TurnOver180Pitch, TurnOver180Roll;
24
extern volatile float NeutralAccZ;
64
 
25
extern long TurnOver180Pitch, TurnOver180Roll;
-
 
-
 
65
// external control
Line 26... Line 66...
26
extern signed int ExternStickPitch,ExternStickRoll,ExternStickYaw;
66
extern int16_t ExternStickPitch, ExternStickRoll, ExternStickYaw;
27
extern unsigned char Parameter_UserParam1,Parameter_UserParam2,Parameter_UserParam3,Parameter_UserParam4,Parameter_UserParam5,Parameter_UserParam6,Parameter_UserParam7,Parameter_UserParam8;
67
 
28
 
68
 
29
void MotorRegler(void);
69
void MotorRegler(void);
30
void SendMotorData(void);
70
void SendMotorData(void);
-
 
71
void CalibMean(void);
-
 
72
void Mean(void);
-
 
73
void SetNeutral(void);
31
void CalibMean(void);
74
void Beep(uint8_t numbeeps);
-
 
75
 
-
 
76
 
-
 
77
//extern unsigned char h,m,s;
-
 
78
 
-
 
79
extern int16_t  Poti1, Poti2, Poti3, Poti4;
Line 32... Line -...
32
void Mean(void);
-
 
33
void SetNeutral(void);
-
 
34
void Piep(unsigned char Anzahl);
-
 
35
 
-
 
36
extern unsigned char h,m,s;
-
 
37
extern volatile unsigned char Timeout;
-
 
38
extern volatile long IntegralPitch,IntegralPitch2;
-
 
39
extern volatile long IntegralRoll,IntegralRoll2;
-
 
40
extern volatile long Integral_Yaw;
-
 
41
extern volatile long Reading_IntegralPitch,Reading_IntegralPitch2;
-
 
42
extern volatile long Reading_IntegralRoll,Reading_IntegralRoll2;
-
 
43
extern volatile long Reading_Integral_Yaw;
-
 
44
extern volatile int  DiffPitch,DiffRoll;
80
 
45
extern int  Poti1, Poti2, Poti3, Poti4;
81
// setpoints for motors
Line 46... Line -...
46
extern volatile unsigned char Motor_Front,Motor_Rear,Motor_Right,Motor_Left, Count;
-
 
47
extern unsigned char MotorValue[5];
-
 
48
extern int StickPitch,StickRoll,StickYaw;
-
 
49
extern char MotorsOn;
-
 
50
 
-
 
51
 
-
 
52
 
-
 
53
extern unsigned char Parameter_Luftdruck_D;
-
 
54
extern unsigned char Parameter_MaxHoehe;
82
extern volatile uint8_t Motor_Front, Motor_Rear, Motor_Right, Motor_Left; //used by twimaster isr
55
extern unsigned char Parameter_Hoehe_P;
-
 
56
extern unsigned char Parameter_Hoehe_ACC_Wirkung;
-
 
Line 57... Line 83...
57
extern unsigned char Parameter_CompassYawEffect;
83