Subversion Repositories FlightCtrl

Rev

Rev 2630 | Rev 2678 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2630 Rev 2640
1
#ifndef _HOTTMENU_H
1
#ifndef _HOTTMENU_H
2
#define _HOTTMENU_H
2
#define _HOTTMENU_H
3
 
3
 
4
extern unsigned char NaviData_WaypointIndex;
4
extern unsigned char NaviData_WaypointIndex;
5
extern unsigned char NaviData_WaypointNumber, NaviData_TargetHoldTime,ToNC_Load_WP_List,NaviData_MaxWpListIndex;
5
extern unsigned char NaviData_WaypointNumber, NaviData_TargetHoldTime,ToNC_Load_WP_List,NaviData_MaxWpListIndex;
6
extern unsigned char ToNC_Load_SingePoint, ToNC_Store_SingePoint, Show_Load_Time, Show_Store_Time, Show_Load_Value, Show_Store_Value;
6
extern unsigned char ToNC_Load_SingePoint, ToNC_Store_SingePoint, Show_Load_Time, Show_Store_Time, Show_Load_Value, Show_Store_Value;
7
 
7
 
8
extern char WPL_Name[10];
8
extern char WPL_Name[10];
9
#if (defined(__AVR_ATmega1284__) || defined(__AVR_ATmega1284P__))
9
#if (defined(__AVR_ATmega1284__) || defined(__AVR_ATmega1284P__))
10
 
10
 
11
#define SPEAK_ERR_CALIBARTION  1
11
#define SPEAK_ERR_CALIBARTION  1
12
#define SPEAK_ERR_RECEICER       2
12
#define SPEAK_ERR_RECEICER       2
13
#define SPEAK_ERR_DATABUS        3
13
#define SPEAK_ERR_DATABUS        3
14
#define SPEAK_ERR_NAVI           4
14
#define SPEAK_ERR_NAVI           4
15
#define SPEAK_ERROR                      5
15
#define SPEAK_ERROR                      5
16
#define SPEAK_ERR_COMPASS        6
16
#define SPEAK_ERR_COMPASS        6
17
#define SPEAK_ERR_SENSOR         7
17
#define SPEAK_ERR_SENSOR         7
18
#define SPEAK_ERR_GPS            8
18
#define SPEAK_ERR_GPS            8
19
#define SPEAK_ERR_MOTOR          9
19
#define SPEAK_ERR_MOTOR          9
20
#define SPEAK_MAX_TEMPERAT  10   // ->Motor Überlastung 
20
#define SPEAK_MAX_TEMPERAT  10   // ->Motor Überlastung 
21
#define SPEAK_ALTI_REACHED  11   // ?
21
#define SPEAK_ALTI_REACHED  11   // ?
22
#define SPEAK_WP_REACHED    12
22
#define SPEAK_WP_REACHED    12
23
#define SPEAK_NEXT_WP       13
23
#define SPEAK_NEXT_WP       13
24
#define SPEAK_LANDING       14
24
#define SPEAK_LANDING       14
25
#define SPEAK_GPS_FIX       15
25
#define SPEAK_GPS_FIX       15
26
#define SPEAK_UNDERVOLTAGE  16
26
#define SPEAK_UNDERVOLTAGE  16
27
#define SPEAK_GPS_HOLD      17
27
#define SPEAK_GPS_HOLD      17
28
#define SPEAK_GPS_HOME      18
28
#define SPEAK_GPS_HOME      18
29
#define SPEAK_GPS_OFF       19
29
#define SPEAK_GPS_OFF       19
30
#define SPEAK_BEEP          20
30
#define SPEAK_BEEP          20
31
#define SPEAK_MIKROKOPTER   21
31
#define SPEAK_MIKROKOPTER   21
32
#define SPEAK_CAPACITY      22   // ?  
32
#define SPEAK_CAPACITY      22   // ?  
33
#define SPEAK_CF_OFF        23
33
#define SPEAK_CF_OFF        23
34
#define SPEAK_CALIBRATE     24
34
#define SPEAK_CALIBRATE     24
35
#define SPEAK_MAX_RANGE     25
35
#define SPEAK_MAX_RANGE     25
36
#define SPEAK_MAX_ALTITUD   26
36
#define SPEAK_MAX_ALTITUD   26
37
 
37
 
38
#define SPEAK_20M                       37   // ?
38
#define SPEAK_20M                       37   // ?
39
#define SPEAK_MK_OFF            38
39
#define SPEAK_MK_OFF            38
40
#define SPEAK_ALTITUDE_ON       39
40
#define SPEAK_ALTITUDE_ON       39
41
#define SPEAK_ALTITUDE_OFF      40
41
#define SPEAK_ALTITUDE_OFF      40
42
#define SPEAK_100M                      41
42
#define SPEAK_100M                      41
43
#define SPEAK_RECEIV_VOLT       42
43
#define SPEAK_RECEIV_VOLT       42
44
#define SPEAK_CF_ON             46
44
#define SPEAK_CF_ON             46
45
#define SPEAK_SINKING           47   // ?
45
#define SPEAK_SINKING           47   // ?
46
#define SPEAK_RISING            48
46
#define SPEAK_RISING            48
47
#define SPEAK_HOLDING           49   // ?
47
#define SPEAK_HOLDING           49   // ?
48
#define SPEAK_GPS_ON            50
48
#define SPEAK_GPS_ON            50
49
#define SPEAK_FOLLWING          51   // ?
49
#define SPEAK_FOLLWING          51   // ?
50
#define SPEAK_STARTING      52
50
#define SPEAK_STARTING      52
51
// Achtung: wenn > 53 -> JETI_CODE[53] anpassen
51
// Achtung: wenn > 53 -> JETI_CODE[53] anpassen
52
/*
52
/*
53
1 Fehler: Kalibration
53
1 Fehler: Kalibration
54
2 Fehler: Empfang
54
2 Fehler: Empfang
55
3 Fehler: Datenbus
55
3 Fehler: Datenbus
56
4 Fehler: Navi
56
4 Fehler: Navi
57
5 Fehler
57
5 Fehler
58
6 Fehler: Kompass
58
6 Fehler: Kompass
59
7 Fehler: Sensor
59
7 Fehler: Sensor
60
8 Fehler: GPS
60
8 Fehler: GPS
61
9 Fehler: Motor
61
9 Fehler: Motor
62
10 Fehler: Überlastung
62
10 Fehler: Überlastung
63
11 Höhe erreicht
63
11 Höhe erreicht
64
12 Wegpunkt erreicht
64
12 Wegpunkt erreicht
65
13 Nächster Wegpunkt
65
13 Nächster Wegpunkt
66
14 Landen
66
14 Landen
67
15 GPS Fix
67
15 GPS Fix
68
16 Unterspannung
68
16 Unterspannung
69
17 GPS Halten
69
17 GPS Halten
70
18 GPS Home
70
18 GPS Home
71
19 GPS Aus
71
19 GPS Aus
72
20 * Beep
72
20 * Beep
73
21 MikroKopter
73
21 MikroKopter
74
22 Kapazität
74
22 Kapazität
75
23 Carefree aus
75
23 Carefree aus
76
24 Kalibriere
76
24 Kalibriere
77
25 Maximale Entfernung
77
25 Maximale Entfernung
78
26 Maximale Höhe
78
26 Maximale Höhe
79
 
79
 
80
27 * Warnung
80
27 * Warnung
81
28 * Failsafe aktiv
81
28 * Failsafe aktiv
82
29 * Failsafe aus
82
29 * Failsafe aus
83
30 * Redundanz aktiv
83
30 * Redundanz aktiv
84
31 * Redundanz aus
84
31 * Redundanz aus
85
32 * Starte Wegpunkt
85
32 * Starte Wegpunkt
86
33 * Fehler: Überstrom
86
33 * Fehler: Überstrom
87
34 * Fehler: Übertemperatur
87
34 * Fehler: Übertemperatur
88
35 * Fehler: Failsafe
88
35 * Fehler: Failsafe
89
36 * Fehler: Redundanz
89
36 * Fehler: Redundanz
90
 
90
 
91
37 Zwanzig Meter
91
37 Zwanzig Meter
92
38 MikroKopter aus
92
38 MikroKopter aus
93
39 Höhe Ein
93
39 Höhe Ein
94
40 Höhe Aus
94
40 Höhe Aus
95
41 Einhundert meter
95
41 Einhundert meter
96
42 * Verbindung hergestellt
96
42 * Verbindung hergestellt
97
43 * Verbindung unterbrochen
97
43 * Verbindung unterbrochen
98
44
98
44
99
45
99
45
100
46 Carefree ein
100
46 Carefree ein
101
47 Sinken
101
47 Sinken
102
48 Steigen
102
48 Steigen
103
49 Halten
103
49 Halten
104
50 GPS ein
104
50 GPS ein
105
51 Folgen
105
51 Folgen
106
52 Starten
106
52 Starten
107
 
107
 
108
//fehlt:
108
//fehlt:
109
//"Warnung"
109
//"Warnung"
110
//"Failsafe"
110
//"Failsafe"
111
//"ERR:Redundanz ?"
111
//"ERR:Redundanz ?"
112
*/
112
*/
113
 
113
 
114
#define MAX_ERR_NUMBER (42+1)
114
#define MAX_ERR_NUMBER (43+1)
115
extern const char PROGMEM NC_ERROR_TEXT[MAX_ERR_NUMBER][17];
115
extern const char PROGMEM NC_ERROR_TEXT[MAX_ERR_NUMBER][17];
116
extern unsigned int NaviData_TargetDistance;
116
extern unsigned int NaviData_TargetDistance;
117
extern unsigned char MaxBlTemperture;
117
extern unsigned char MaxBlTemperture;
118
extern unsigned char MinBlTemperture;
118
extern unsigned char MinBlTemperture;
119
extern unsigned char HottestBl;
119
extern unsigned char HottestBl;
120
 
120
 
121
extern unsigned char HottKeyboard,HoTT_RequestedSensor;
121
extern unsigned char HottKeyboard,HoTT_RequestedSensor;
122
extern unsigned char HottUpdate(unsigned char key);
122
extern unsigned char HottUpdate(unsigned char key);
123
extern unsigned char SpeakHoTT,ShowSettingNameTime, ShowCmpsCalibrateTime;
123
extern unsigned char SpeakHoTT,ShowSettingNameTime, ShowCmpsCalibrateTime;
124
extern unsigned char ToNC_SpeakHoTT;
124
extern unsigned char ToNC_SpeakHoTT;
125
extern volatile unsigned char *HoTT_DataPointer;
125
extern volatile unsigned char *HoTT_DataPointer;
126
 
126
 
127
extern void CreateHoTT_Menu(void);
127
extern void CreateHoTT_Menu(void);
128
extern void LIBFC_HoTT_Putchar(char);
128
extern void LIBFC_HoTT_Putchar(char);
129
extern void LIBFC_HoTT_Putchar_INV(char); // print Invers
129
extern void LIBFC_HoTT_Putchar_INV(char); // print Invers
130
extern void LIBFC_HoTT_Putchar_BLINK(char);
130
extern void LIBFC_HoTT_Putchar_BLINK(char);
131
extern void LIBFC_HoTT_SetPos(unsigned char);
131
extern void LIBFC_HoTT_SetPos(unsigned char);
132
extern void LIBFC_HoTT_Clear(void);
132
extern void LIBFC_HoTT_Clear(void);
133
extern void NC_Fills_HoTT_Telemety(void);
133
extern void NC_Fills_HoTT_Telemety(void);
134
extern void HoTT_Menu(void);
134
extern void HoTT_Menu(void);
135
extern unsigned char HoTT_Telemety(unsigned char);
135
extern unsigned char HoTT_Telemety(unsigned char);
136
extern unsigned char HoTT_Waring(void);
136
extern unsigned char HoTT_Waring(void);
137
extern volatile unsigned char HoTTBlink;
137
extern volatile unsigned char HoTTBlink;
138
extern void GetHottestBl(void);
138
extern void GetHottestBl(void);
139
 
139
 
140
typedef struct
140
typedef struct
141
{
141
{
142
  unsigned char StartByte;      // 0x7C
142
  unsigned char StartByte;      // 0x7C
143
  unsigned char Packet_ID;      // HOTT_GENERAL_PACKET_ID       
143
  unsigned char Packet_ID;      // HOTT_GENERAL_PACKET_ID       
144
  unsigned char WarnBeep;       // 3 Anzahl der Töne 0..36
144
  unsigned char WarnBeep;       // 3 Anzahl der Töne 0..36
145
  unsigned char SensorID;       // 4 0xD0
145
  unsigned char SensorID;       // 4 0xD0
146
  unsigned char InverseStatus1; // 5  
146
  unsigned char InverseStatus1; // 5  
147
  unsigned char InverseStatus2; // 6
147
  unsigned char InverseStatus2; // 6
148
  unsigned char VoltageCell1;   // 7 208 = 4,16V  (Voltage * 50 = Wert)
148
  unsigned char VoltageCell1;   // 7 208 = 4,16V  (Voltage * 50 = Wert)
149
  unsigned char VoltageCell2;   // 8 209 = 4,18V
149
  unsigned char VoltageCell2;   // 8 209 = 4,18V
150
  unsigned char VoltageCell3;   // 9
150
  unsigned char VoltageCell3;   // 9
151
  unsigned char VoltageCell4;   // 10
151
  unsigned char VoltageCell4;   // 10
152
  unsigned char VoltageCell5;   // 11
152
  unsigned char VoltageCell5;   // 11
153
  unsigned char VoltageCell6;   // 12
153
  unsigned char VoltageCell6;   // 12
154
  unsigned int  Battery1;               // 13+14 51  = 5,1V
154
  unsigned int  Battery1;               // 13+14 51  = 5,1V
155
  unsigned int  Battery2;               // 15+16 51  = 5,1V
155
  unsigned int  Battery2;               // 15+16 51  = 5,1V
156
  unsigned char Temperature1;   // 17 44 = 24°C, 0 = -20°C
156
  unsigned char Temperature1;   // 17 44 = 24°C, 0 = -20°C
157
  unsigned char Temperature2;   // 18 44 = 24°C, 0 = -20°C
157
  unsigned char Temperature2;   // 18 44 = 24°C, 0 = -20°C
158
  unsigned char FuelPercent;    // 19
158
  unsigned char FuelPercent;    // 19
159
    signed int  FuelCapacity;   // 20+21
159
    signed int  FuelCapacity;   // 20+21
160
  unsigned int  Rpm;                    // 22+23
160
  unsigned int  Rpm;                    // 22+23
161
    signed int  Altitude;               // 24+25
161
    signed int  Altitude;               // 24+25
162
  unsigned int  m_sec;              // 26+27 3000 = 0
162
  unsigned int  m_sec;              // 26+27 3000 = 0
163
  unsigned char m_3sec;             // 28 120 = 0
163
  unsigned char m_3sec;             // 28 120 = 0
164
  unsigned int  Current;                // 29+30 1 = 0.1A
164
  unsigned int  Current;                // 29+30 1 = 0.1A
165
  unsigned int  InputVoltage;   // 31+32 66  = 6,6V
165
  unsigned int  InputVoltage;   // 31+32 66  = 6,6V
166
  unsigned int  Capacity;               // 33+34 1  = 10mAh
166
  unsigned int  Capacity;               // 33+34 1  = 10mAh
167
  unsigned int  Speed;                  // 35+36
167
  unsigned int  Speed;                  // 35+36
168
  unsigned char LowestCellVoltage;      // 37
168
  unsigned char LowestCellVoltage;      // 37
169
  unsigned char LowestCellNumber;       // 38
169
  unsigned char LowestCellNumber;       // 38
170
  unsigned int  Rpm2;                           // 39+40
170
  unsigned int  Rpm2;                           // 39+40
171
  unsigned char ErrorNumber;            // 41
171
  unsigned char ErrorNumber;            // 41
172
  unsigned char Pressure;           // 42  in 0,1bar 20=2,0bar
172
  unsigned char Pressure;           // 42  in 0,1bar 20=2,0bar
173
  unsigned char Version;            // 43
173
  unsigned char Version;            // 43
174
  unsigned char EndByte;                // 0x7D
174
  unsigned char EndByte;                // 0x7D
175
} HoTTGeneral_t;
175
} HoTTGeneral_t;
176
 
176
 
177
typedef struct
177
typedef struct
178
{
178
{
179
  unsigned char StartByte;      // 0x7C
179
  unsigned char StartByte;      // 0x7C
180
  unsigned char Packet_ID;      // HOTT_ELECTRIC_AIR_PACKET_ID  
180
  unsigned char Packet_ID;      // HOTT_ELECTRIC_AIR_PACKET_ID  
181
  unsigned char WarnBeep;       // Anzahl der Töne 0..36
181
  unsigned char WarnBeep;       // Anzahl der Töne 0..36
182
  unsigned char SensorID;       // 4 0xE0
182
  unsigned char SensorID;       // 4 0xE0
183
  unsigned char InverseStatus1; // 5  
183
  unsigned char InverseStatus1; // 5  
184
  unsigned char InverseStatus2; // 6
184
  unsigned char InverseStatus2; // 6
185
  unsigned char VoltageCell1;   // 7 208 = 4,16V  (Voltage * 50 = Wert)
185
  unsigned char VoltageCell1;   // 7 208 = 4,16V  (Voltage * 50 = Wert)
186
  unsigned char VoltageCell2;   // 209 = 4,18V
186
  unsigned char VoltageCell2;   // 209 = 4,18V
187
  unsigned char VoltageCell3;   // 
187
  unsigned char VoltageCell3;   // 
188
  unsigned char VoltageCell4;   // 
188
  unsigned char VoltageCell4;   // 
189
  unsigned char VoltageCell5;   // 
189
  unsigned char VoltageCell5;   // 
190
  unsigned char VoltageCell6;   // 
190
  unsigned char VoltageCell6;   // 
191
  unsigned char VoltageCell7;   // 
191
  unsigned char VoltageCell7;   // 
192
  unsigned char VoltageCell8;   // 
192
  unsigned char VoltageCell8;   // 
193
  unsigned char VoltageCell9;   // 
193
  unsigned char VoltageCell9;   // 
194
  unsigned char VoltageCell10;  // 
194
  unsigned char VoltageCell10;  // 
195
  unsigned char VoltageCell11;  // 
195
  unsigned char VoltageCell11;  // 
196
  unsigned char VoltageCell12;  // 
196
  unsigned char VoltageCell12;  // 
197
  unsigned char VoltageCell13;  // 
197
  unsigned char VoltageCell13;  // 
198
  unsigned char VoltageCell14;  // 20 
198
  unsigned char VoltageCell14;  // 20 
199
  unsigned int  Battery1;               // 21+22 51  = 5,1V
199
  unsigned int  Battery1;               // 21+22 51  = 5,1V
200
  unsigned int  Battery2;               // 23+24 51  = 5,1V
200
  unsigned int  Battery2;               // 23+24 51  = 5,1V
201
  unsigned char Temperature1;   // 25 44 = 24°C, 0 = -20°C
201
  unsigned char Temperature1;   // 25 44 = 24°C, 0 = -20°C
202
  unsigned char Temperature2;   // 26 44 = 24°C, 0 = -20°C
202
  unsigned char Temperature2;   // 26 44 = 24°C, 0 = -20°C
203
    signed int  Altitude;               // 27+28
203
    signed int  Altitude;               // 27+28
204
  unsigned int  Current;                // 29+30 1 = 0.1A
204
  unsigned int  Current;                // 29+30 1 = 0.1A
205
  unsigned int  InputVoltage;   // 31+32 66  = 6,6V
205
  unsigned int  InputVoltage;   // 31+32 66  = 6,6V
206
  unsigned int  Capacity;               // 33+34 1  = 10mAh
206
  unsigned int  Capacity;               // 33+34 1  = 10mAh
207
  unsigned int  m_sec;              // 35+36 30000 = 0
207
  unsigned int  m_sec;              // 35+36 30000 = 0
208
  unsigned char m_3sec;             // 37 120 = 0
208
  unsigned char m_3sec;             // 37 120 = 0
209
  unsigned int  Rpm;                    // 38+39
209
  unsigned int  Rpm;                    // 38+39
210
  unsigned char FlightTimeMinutes; // 40
210
  unsigned char FlightTimeMinutes; // 40
211
  unsigned char FlightTimeSeconds; // 41
211
  unsigned char FlightTimeSeconds; // 41
212
  unsigned char Speed;                  // 42  1=2km 
212
  unsigned char Speed;                  // 42  1=2km 
213
  unsigned char Version;                // 43 0x00
213
  unsigned char Version;                // 43 0x00
214
  unsigned char EndByte;                // 0x7D
214
  unsigned char EndByte;                // 0x7D
215
} ElectricAirPacket_t;
215
} ElectricAirPacket_t;
216
 
216
 
217
 
217
 
218
typedef struct
218
typedef struct
219
{
219
{
220
  unsigned char StartByte;      // 0x7C
220
  unsigned char StartByte;      // 0x7C
221
  unsigned char Packet_ID;      // 0x89  - Vario ID 
221
  unsigned char Packet_ID;      // 0x89  - Vario ID 
222
  unsigned char WarnBeep;   //3         // Anzahl der Töne 0..36
222
  unsigned char WarnBeep;   //3         // Anzahl der Töne 0..36
223
  unsigned char SensorID;        // 0x90
223
  unsigned char SensorID;        // 0x90
224
  unsigned char InverseStatus;  
224
  unsigned char InverseStatus;  
225
    signed int Altitude;        //6+7    // 500 = 0m
225
    signed int Altitude;        //6+7    // 500 = 0m
226
    signed int MaxAltitude;     //8+9    // 500 = 0m
226
    signed int MaxAltitude;     //8+9    // 500 = 0m
227
        signed int MinAltitude; //10+11   // 500 = 0m
227
        signed int MinAltitude; //10+11   // 500 = 0m
228
  unsigned int m_sec;           //12+13    // 3000 = 0
228
  unsigned int m_sec;           //12+13    // 3000 = 0
229
  unsigned int  m_3sec;         //14+15    
229
  unsigned int  m_3sec;         //14+15    
230
  unsigned int  m_10sec;        //26+17
230
  unsigned int  m_10sec;        //26+17
231
  char              Text[21];   //18-38
231
  char              Text[21];   //18-38
232
  char              FreeCharacters[3]; // 39-41
232
  char              FreeCharacters[3]; // 39-41
233
  unsigned char NullByte;   // 42 0x00
233
  unsigned char NullByte;   // 42 0x00
234
  unsigned char Version;        // 43
234
  unsigned char Version;        // 43
235
  unsigned char EndByte;        // 0x7D
235
  unsigned char EndByte;        // 0x7D
236
} VarioPacket_t;
236
} VarioPacket_t;
237
 
237
 
238
typedef struct
238
typedef struct
239
{
239
{
240
  unsigned char StartByte;  //0         // 0x7C
240
  unsigned char StartByte;  //0         // 0x7C
241
  unsigned char Packet_ID;  //1         // 0x8A  - GPS ID 
241
  unsigned char Packet_ID;  //1         // 0x8A  - GPS ID 
242
  unsigned char WarnBeep;   //2         // Anzahl der Töne 0..36
242
  unsigned char WarnBeep;   //2         // Anzahl der Töne 0..36
243
  unsigned char SensorID;       // 4 0xA0
243
  unsigned char SensorID;       // 4 0xA0
244
  unsigned char InverseStatus1; // 5  
244
  unsigned char InverseStatus1; // 5  
245
  unsigned char InverseStatus2; // 6
245
  unsigned char InverseStatus2; // 6
246
  unsigned char Heading;        //7     // 1 = 2°
246
  unsigned char Heading;        //7     // 1 = 2°
247
  unsigned int Speed;           //8+9   // in km/h
247
  unsigned int Speed;           //8+9   // in km/h
248
  unsigned char Lat_North;      //10    
248
  unsigned char Lat_North;      //10    
249
  unsigned char Lat_G;      //11
249
  unsigned char Lat_G;      //11
250
  unsigned char Lat_M;      //12
250
  unsigned char Lat_M;      //12
251
  unsigned char Lat_Sek1;       //13    
251
  unsigned char Lat_Sek1;       //13    
252
  unsigned char Lat_Sek2;       //14    
252
  unsigned char Lat_Sek2;       //14    
253
  unsigned char Lon_East;       //15    
253
  unsigned char Lon_East;       //15    
254
  unsigned char Lon_G;      //16
254
  unsigned char Lon_G;      //16
255
  unsigned char Lon_M;      //17
255
  unsigned char Lon_M;      //17
256
  unsigned char Lon_Sek1;       //18    
256
  unsigned char Lon_Sek1;       //18    
257
  unsigned char Lon_Sek2;       //19    
257
  unsigned char Lon_Sek2;       //19    
258
  unsigned int Distance;        //20+21    // 9000 = 0m
258
  unsigned int Distance;        //20+21    // 9000 = 0m
259
    signed int Altitude;        //22+23    // 500 = 0m
259
    signed int Altitude;        //22+23    // 500 = 0m
260
  unsigned int m_sec;           //24+25    // 3000 = 0
260
  unsigned int m_sec;           //24+25    // 3000 = 0
261
  unsigned char m_3sec;         //26 120 = 0
261
  unsigned char m_3sec;         //26 120 = 0
262
  unsigned char NumOfSats;      //27
262
  unsigned char NumOfSats;      //27
263
  unsigned char SatFix;     //28
263
  unsigned char SatFix;     //28
264
  unsigned char HomeDirection; // 29
264
  unsigned char HomeDirection; // 29
265
  unsigned char AngleX;           // 30 
265
  unsigned char AngleX;           // 30 
266
  unsigned char AngleY;       // 31
266
  unsigned char AngleY;       // 31
267
  unsigned char AngleZ;       // 32
267
  unsigned char AngleZ;       // 32
268
    signed int GyroX;         //33+34
268
    signed int GyroX;         //33+34
269
    signed int GyroY;         //35+36
269
    signed int GyroY;         //35+36
270
    signed int GyroZ;         //37+38
270
    signed int GyroZ;         //37+38
271
  unsigned char Vibration;    // 39
271
  unsigned char Vibration;    // 39
272
  char              FreeCharacters[3]; // 40-42
272
  char              FreeCharacters[3]; // 40-42
273
  unsigned char Version;        // 43
273
  unsigned char Version;        // 43
274
  unsigned char EndByte;                // 0x7D
274
  unsigned char EndByte;                // 0x7D
275
} GPSPacket_t;
275
} GPSPacket_t;
276
 
276
 
277
typedef struct
277
typedef struct
278
{
278
{
279
  unsigned char StartByte;      // 0x7B
279
  unsigned char StartByte;      // 0x7B
280
  unsigned char Packet_ID;      // 
280
  unsigned char Packet_ID;      // 
281
  unsigned char WarnBeep;       // Anzahl der Töne 0..36
281
  unsigned char WarnBeep;       // Anzahl der Töne 0..36
282
  char Text[8*21];
282
  char Text[8*21];
283
  unsigned char EndByte;                // 0x7D
283
  unsigned char EndByte;                // 0x7D
284
} ASCIIPacket_t;
284
} ASCIIPacket_t;
285
 
285
 
286
 
286
 
287
 
287
 
288
extern GPSPacket_t GPSPacket;
288
extern GPSPacket_t GPSPacket;
289
extern VarioPacket_t VarioPacket;
289
extern VarioPacket_t VarioPacket;
290
extern ASCIIPacket_t ASCIIPacket;
290
extern ASCIIPacket_t ASCIIPacket;
291
extern ElectricAirPacket_t ElectricAirPacket;
291
extern ElectricAirPacket_t ElectricAirPacket;
292
extern HoTTGeneral_t HoTTGeneral;
292
extern HoTTGeneral_t HoTTGeneral;
293
 
293
 
294
#define HOTT_VARIO_PACKET_ID            0x89
294
#define HOTT_VARIO_PACKET_ID            0x89
295
#define HOTT_GPS_PACKET_ID                      0x8A
295
#define HOTT_GPS_PACKET_ID                      0x8A
296
#define HOTT_ELECTRIC_AIR_PACKET_ID     0x8E
296
#define HOTT_ELECTRIC_AIR_PACKET_ID     0x8E
297
#define HOTT_GENERAL_PACKET_ID          0x8D
297
#define HOTT_GENERAL_PACKET_ID          0x8D
298
#define JETI_GPS_PACKET_ID1                     0x01
298
#define JETI_GPS_PACKET_ID1                     0x01
299
#define JETI_GPS_PACKET_ID2                     0x02
299
#define JETI_GPS_PACKET_ID2                     0x02
300
#define HOTT_WPL_NAME                           0x03
300
#define HOTT_WPL_NAME                           0x03
301
 
301
 
302
//---------------------------------------------------------------------------------------------------
302
//---------------------------------------------------------------------------------------------------
303
typedef struct{
303
typedef struct{
304
  char offset;
304
  char offset;
305
  unsigned char min;
305
  unsigned char min;
306
  unsigned char max;
306
  unsigned char max;
307
  char name[4];
307
  char name[4];
308
  unsigned char *Variable;
308
  unsigned char *Variable;
309
} Parameter_List_t;
309
} Parameter_List_t;
310
 
310
 
311
#define MAXPARAM 41 //Muss eine ungerade Zahl sein
311
#define MAXPARAM 41 //Muss eine ungerade Zahl sein
312
extern const Parameter_List_t Parameter_List[];
312
extern const Parameter_List_t Parameter_List[];
313
//---------------------------------------------------------------------------------------------------
313
//---------------------------------------------------------------------------------------------------
314
 
314
 
315
#endif 
315
#endif 
316
#endif
316
#endif
317
 
317
 
318
 
318