Rev 674 | Rev 801 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 674 | Rev 750 | ||
---|---|---|---|
Line 20... | Line 20... | ||
20 | #define MK_DATATYPES_H |
20 | #define MK_DATATYPES_H |
Line 21... | Line 21... | ||
21 | 21 | ||
Line 22... | Line 22... | ||
22 | #include <stdint.h> |
22 | #include <stdint.h> |
23 | 23 | ||
24 | #ifdef _BETA_ |
24 | #ifdef _BETA_ |
25 | static const int MK_VERSION_SETTINGS = 80; // wird angepasst, wenn sich die EEPROM-Daten ge�ndert haben |
25 | static const int MK_VERSION_SETTINGS = 82; // wird angepasst, wenn sich die EEPROM-Daten ge�ndert haben |
26 | #else |
26 | #else |
Line 27... | Line 27... | ||
27 | static const int MK_VERSION_SETTINGS = 80; // wird angepasst, wenn sich die EEPROM-Daten ge�ndert haben |
27 | static const int MK_VERSION_SETTINGS = 82; // wird angepasst, wenn sich die EEPROM-Daten ge�ndert haben |
Line 28... | Line 28... | ||
28 | #endif |
28 | #endif |
29 | 29 | ||
Line 30... | Line 30... | ||
30 | static const int MK_VERSION_NAVI = 2; // wird angepasst, wenn sich die Mixer-Daten ge�ndert haben |
30 | static const int MK_VERSION_NAVI = 3; // wird angepasst, wenn sich die Navi-Daten ge�ndert haben |
31 | 31 | ||
32 | static const int MK_VERSION_MIXER = 1; // wird angepasst, wenn sich die Mixer-Daten ge�ndert haben |
32 | static const int MK_VERSION_MIXER = 1; // wird angepasst, wenn sich die Mixer-Daten ge�ndert haben |
Line 33... | Line 33... | ||
33 | static const int MK_MAX_MOTOR = 16; // Maximale Anzahl der Motoren im Mixer |
33 | static const int MK_MAX_MOTOR = 16; // Maximale Anzahl der Motoren im Mixer |
34 | 34 | ||
35 | // Version des Seriellen Protokoll |
35 | // Version des Seriellen Protokoll |
Line 69... | Line 69... | ||
69 | 69 | ||
70 | #define CFG2_HEIGHT_LIMIT 0x01 |
70 | #define CFG2_HEIGHT_LIMIT 0x01 |
71 | #define CFG2_VARIO_BEEP 0x02 |
71 | #define CFG2_VARIO_BEEP 0x02 |
Line -... | Line 72... | ||
- | 72 | #define CFG_SENSITIVE_RC 0x04 |
|
- | 73 | ||
- | 74 | struct s_MK_Debug |
|
- | 75 | { |
|
- | 76 | unsigned char Digital[2]; |
|
- | 77 | int16_t Analog[32]; // Debugwerte |
|
- | 78 | }; |
|
- | 79 | ||
- | 80 | struct s_MK_DebugLabels |
|
- | 81 | { |
|
- | 82 | int Position; |
|
- | 83 | QString Text; |
|
- | 84 | }; |
|
- | 85 | ||
- | 86 | //typedef int16_t s_MK_PPM_Data[26]; |
|
- | 87 | ||
- | 88 | struct s_MK_PPM_Data |
|
- | 89 | { |
|
- | 90 | int16_t Data[26]; |
|
- | 91 | }; |
|
72 | #define CFG_SENSITIVE_RC 0x04 |
92 | |
73 | 93 | ||
74 | struct s_MK_Settings |
94 | struct s_MK_Settings |
75 | { |
95 | { |
76 | // Die ersten beiden Bytes nicht an den MK senden. |
96 | // Die ersten beiden Bytes nicht an den MK senden. |
Line 77... | Line 97... | ||
77 | unsigned char Index; |
97 | unsigned char Index; |
78 | unsigned char Version; |
98 | unsigned char Version; |
79 | 99 | ||
80 | unsigned char Kanalbelegung[8]; // GAS[0], GIER[1],NICK[2], ROLL[3], POTI1, POTI2, POTI3 |
100 | unsigned char Kanalbelegung[12]; // GAS[0], GIER[1],NICK[2], ROLL[3], POTI1, POTI2, POTI3 |
81 | unsigned char GlobalConfig; // 0x01=H�henregler aktiv,0x02=Kompass aktiv, 0x04=GPS aktiv, 0x08=Heading Hold aktiv |
101 | unsigned char GlobalConfig; // 0x01=H�henregler aktiv,0x02=Kompass aktiv, 0x04=GPS aktiv, 0x08=Heading Hold aktiv |
82 | unsigned char Hoehe_MinGas; // Wert : 0-100 |
102 | unsigned char Hoehe_MinGas; // Wert : 0-100 |
Line 96... | Line 116... | ||
96 | unsigned char GyroAccFaktor; // Wert : 1-64 |
116 | unsigned char GyroAccFaktor; // Wert : 1-64 |
97 | unsigned char KompassWirkung; // Wert : 0-32 |
117 | unsigned char KompassWirkung; // Wert : 0-32 |
98 | unsigned char Gyro_P; // Wert : 10-250 |
118 | unsigned char Gyro_P; // Wert : 10-250 |
99 | unsigned char Gyro_I; // Wert : 0-250 |
119 | unsigned char Gyro_I; // Wert : 0-250 |
100 | unsigned char Gyro_D; // Wert : 0-250 |
120 | unsigned char Gyro_D; // Wert : 0-250 |
101 | unsigned char Gyro_Gier_P; // Wert : 10-250 |
121 | unsigned char Gyro_Gier_P; // Wert : 10-250 |
102 | unsigned char Gyro_Gier_I; // Wert : 0-250 |
122 | unsigned char Gyro_Gier_I; // Wert : 0-250 |
103 | unsigned char UnterspannungsWarnung; // Wert : 0-250 |
123 | unsigned char UnterspannungsWarnung; // Wert : 0-250 |
104 | unsigned char NotGas; // Wert : 0-250 //Gaswert bei Emp�ngsverlust |
124 | unsigned char NotGas; // Wert : 0-250 //Gaswert bei Emp�ngsverlust |
105 | unsigned char NotGasZeit; // Wert : 0-250 // Zeitbis auf NotGas geschaltet wird, wg. Rx-Problemen |
125 | unsigned char NotGasZeit; // Wert : 0-250 // Zeitbis auf NotGas geschaltet wird, wg. Rx-Problemen |
106 | unsigned char UfoAusrichtung; // X oder + Formation |
126 | unsigned char Receiver; // 0= Summensignal, 1= Spektrum, 2 =Jeti, 3=ACT DSL, 4=ACT S3D |
107 | unsigned char I_Faktor; // Wert : 0-250 |
127 | unsigned char I_Faktor; // Wert : 0-250 |
108 | unsigned char UserParam1; // Wert : 0-250 |
128 | unsigned char UserParam1; // Wert : 0-250 |
109 | unsigned char UserParam2; // Wert : 0-250 |
129 | unsigned char UserParam2; // Wert : 0-250 |
110 | unsigned char UserParam3; // Wert : 0-250 |
130 | unsigned char UserParam3; // Wert : 0-250 |
111 | unsigned char UserParam4; // Wert : 0-250 |
131 | unsigned char UserParam4; // Wert : 0-250 |
Line 117... | Line 137... | ||
117 | unsigned char ServoRollControl; // Wert : 0-250 // Stellung des Servos |
137 | unsigned char ServoRollControl; // Wert : 0-250 // Stellung des Servos |
118 | unsigned char ServoRollComp; // Wert : 0-250 |
138 | unsigned char ServoRollComp; // Wert : 0-250 |
119 | unsigned char ServoRollMin; // Wert : 0-250 |
139 | unsigned char ServoRollMin; // Wert : 0-250 |
120 | unsigned char ServoRollMax; // Wert : 0-250 |
140 | unsigned char ServoRollMax; // Wert : 0-250 |
121 | //--- |
141 | //--- |
122 | unsigned char ServoNickRefresh; // |
142 | unsigned char ServoNickRefresh; // Speed of the Servo |
- | 143 | unsigned char Servo3; // Value or mapping of the Servo Output |
|
- | 144 | unsigned char Servo4; // Value or mapping of the Servo Output |
|
- | 145 | unsigned char Servo5; // Value or mapping of the Servo Output |
|
123 | unsigned char LoopGasLimit; // Wert: 0-250 max. Gas w�hrend Looping |
146 | unsigned char LoopGasLimit; // Wert: 0-250 max. Gas w�hrend Looping |
124 | unsigned char LoopThreshold; // Wert: 0-250 Schwelle f�r Stickausschlag |
147 | unsigned char LoopThreshold; // Wert: 0-250 Schwelle f�r Stickausschlag |
125 | unsigned char LoopHysterese; // Wert: 0-250 Hysterese f�r Stickausschlag |
148 | unsigned char LoopHysterese; // Wert: 0-250 Hysterese f�r Stickausschlag |
126 | unsigned char AchsKopplung1; // Wert: 0-250 Faktor, mit dem Gier die Achsen Roll und Nick koppelt (NickRollMitkopplung) |
149 | unsigned char AchsKopplung1; // Wert: 0-250 Faktor, mit dem Gier die Achsen Roll und Nick koppelt (NickRollMitkopplung) |
127 | unsigned char AchsKopplung2; // Wert: 0-250 Faktor, mit dem Nick und Roll verkoppelt werden |
150 | unsigned char AchsKopplung2; // Wert: 0-250 Faktor, mit dem Nick und Roll verkoppelt werden |
Line 165... | Line 188... | ||
165 | //------------------------------------------------ |
188 | //------------------------------------------------ |
166 | unsigned char BitConfig; // (war Loop-Cfg) Bitcodiert: 0x01=oben, 0x02=unten, 0x04=links, 0x08=rechts / wird getrennt behandelt |
189 | unsigned char BitConfig; // (war Loop-Cfg) Bitcodiert: 0x01=oben, 0x02=unten, 0x04=links, 0x08=rechts / wird getrennt behandelt |
167 | unsigned char ServoCompInvert; // // 0x01 = Nick, 0x02 = Roll 0 oder 1 // WICHTIG!!! am Ende lassen |
190 | unsigned char ServoCompInvert; // // 0x01 = Nick, 0x02 = Roll 0 oder 1 // WICHTIG!!! am Ende lassen |
168 | unsigned char ExtraConfig; // bitcodiert |
191 | unsigned char ExtraConfig; // bitcodiert |
169 | char Name[12]; |
192 | char Name[12]; |
- | 193 | ||
170 | }; |
194 | }; |
Line 171... | Line 195... | ||
171 | 195 | ||
172 | struct s_MK_Mixer |
196 | struct s_MK_Mixer |
173 | { |
197 | { |
Line 235... | Line 259... | ||
235 | int16_t TopSpeed; // velocity in vertical direction in cm/s |
259 | int16_t TopSpeed; // velocity in vertical direction in cm/s |
236 | uint8_t TargetHoldTime; // time in s to stay at the given target, counts down to 0 if target has been reached |
260 | uint8_t TargetHoldTime; // time in s to stay at the given target, counts down to 0 if target has been reached |
237 | uint8_t RC_RSSI; // Receiver signal strength (since version 2 added) |
261 | uint8_t RC_RSSI; // Receiver signal strength (since version 2 added) |
238 | int16_t SetpointAltitude; // setpoint for altitude |
262 | int16_t SetpointAltitude; // setpoint for altitude |
239 | uint8_t Gas; // for future use |
263 | uint8_t Gas; // for future use |
- | 264 | uint16_t Current; // actual current in 0.1A steps |
|
- | 265 | uint16_t UsedCapacity; // used capacity in mAh |
|
- | 266 | ||
240 | } __attribute__((packed)) s_MK_NaviData; |
267 | } __attribute__((packed)) s_MK_NaviData; |
Line 241... | Line 268... | ||
241 | 268 | ||
242 | typedef struct |
269 | typedef struct |
243 | { |
270 | { |