Subversion Repositories FlightCtrl

Rev

Rev 1940 | Rev 1944 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1940 Rev 1943
1
#ifndef _HOTTMENU_H
1
#ifndef _HOTTMENU_H
2
#define _HOTTMENU_H
2
#define _HOTTMENU_H
3
 
3
 
4
#if (defined(__AVR_ATmega1284__) || defined(__AVR_ATmega1284P__))
4
#if (defined(__AVR_ATmega1284__) || defined(__AVR_ATmega1284P__))
5
 
5
 
6
#define MAX_ERR_NUMBER 22
6
#define MAX_ERR_NUMBER 22
7
extern const char PROGMEM NC_ERROR_TEXT[MAX_ERR_NUMBER][17];
7
extern const char PROGMEM NC_ERROR_TEXT[MAX_ERR_NUMBER][17];
8
 
8
 
9
extern unsigned char HottKeyboard,HoTT_RequestedSensor;
9
extern unsigned char HottKeyboard,HoTT_RequestedSensor;
10
extern unsigned char HottUpdate(unsigned char key);
10
extern unsigned char HottUpdate(unsigned char key);
11
 
11
 
12
extern volatile unsigned char *HoTT_DataPointer;
12
extern volatile unsigned char *HoTT_DataPointer;
13
 
13
 
14
extern void CreateHoTT_Menu(void);
14
extern void CreateHoTT_Menu(void);
15
extern void LIBFC_HoTT_Putchar(char);
15
extern void LIBFC_HoTT_Putchar(char);
16
extern void LIBFC_HoTT_Putchar_INV(char); // print Invers
16
extern void LIBFC_HoTT_Putchar_INV(char); // print Invers
17
extern void LIBFC_HoTT_Putchar_BLINK(char);
17
extern void LIBFC_HoTT_Putchar_BLINK(char);
18
extern void LIBFC_HoTT_SetPos(unsigned char);
18
extern void LIBFC_HoTT_SetPos(unsigned char);
19
extern void LIBFC_HoTT_Clear(void);
19
extern void LIBFC_HoTT_Clear(void);
20
extern void HoTT_Menu(void);
20
extern void HoTT_Menu(void);
21
extern unsigned char HoTT_Telemety(unsigned char);
21
extern unsigned char HoTT_Telemety(unsigned char);
22
extern unsigned char HoTT_Waring(void);
22
extern unsigned char HoTT_Waring(void);
23
extern volatile unsigned char HoTTBlink;
23
extern volatile unsigned char HoTTBlink;
24
 
24
 
25
typedef struct
25
typedef struct
26
{
26
{
27
  unsigned char StartByte;      // 0x7C
27
  unsigned char StartByte;      // 0x7C
28
  unsigned char Packet_ID;      // HOTT_ELECTRIC_AIR_PACKET_ID  
28
  unsigned char Packet_ID;      // HOTT_ELECTRIC_AIR_PACKET_ID  
29
  unsigned char WarnBeep;       // Anzahl der Töne 0..36
29
  unsigned char WarnBeep;       // Anzahl der Töne 0..36
30
  unsigned char VoltageCell1;   // 208 = 4,16V  (Voltage * 50 = Wert)
30
  unsigned char VoltageCell1;   // 208 = 4,16V  (Voltage * 50 = Wert)
31
  unsigned char VoltageCell2;   // 209 = 4,18V
31
  unsigned char VoltageCell2;   // 209 = 4,18V
32
  unsigned char VoltageCell3;   // 
32
  unsigned char VoltageCell3;   // 
33
  unsigned char VoltageCell4;   // 
33
  unsigned char VoltageCell4;   // 
34
  unsigned char VoltageCell5;   // 
34
  unsigned char VoltageCell5;   // 
35
  unsigned char VoltageCell6;   // 
35
  unsigned char VoltageCell6;   // 
-
 
36
  unsigned int  Battery1;               // 51  = 5,1V
-
 
37
  unsigned int  Battery2;               // 51  = 5,1V
-
 
38
  unsigned char Temperature1;   // 44 = 24°C, 0 = -20°C
-
 
39
  unsigned char Temperature2;   // 44 = 24°C, 0 = -20°C
-
 
40
  unsigned char FuelPercent;
-
 
41
  unsigned int  FuelCapacity;  
-
 
42
  unsigned int  Rpm;  
-
 
43
  unsigned int  Altitude;      
-
 
44
  unsigned int  m_sec;              // 3000 = 0
-
 
45
  unsigned char m_3sec;             // 120 = 0
-
 
46
  unsigned int  Current;                // 1 = 0.1A
-
 
47
  unsigned int  InputVoltage;   // 66  = 6,6V
-
 
48
  unsigned int  Capacity;               // 1  = 10mAh
-
 
49
  unsigned char NullByte1;      // 0x00
-
 
50
  unsigned char NullByte2;      // 0x00
-
 
51
  unsigned char EndByte;                // 0x7D
-
 
52
} HoTTGeneral_t;
-
 
53
 
-
 
54
typedef struct
-
 
55
{
-
 
56
  unsigned char StartByte;      // 0x7C
-
 
57
  unsigned char Packet_ID;      // HOTT_ELECTRIC_AIR_PACKET_ID  
-
 
58
  unsigned char WarnBeep;       // Anzahl der Töne 0..36
-
 
59
  unsigned char VoltageCell1;   // 208 = 4,16V  (Voltage * 50 = Wert)
-
 
60
  unsigned char VoltageCell2;   // 209 = 4,18V
-
 
61
  unsigned char VoltageCell3;   // 
-
 
62
  unsigned char VoltageCell4;   // 
-
 
63
  unsigned char VoltageCell5;   // 
-
 
64
  unsigned char VoltageCell6;   // 
36
  unsigned char VoltageCell7;   // 
65
  unsigned char VoltageCell7;   // 
37
  unsigned char VoltageCell8;   // 
66
  unsigned char VoltageCell8;   // 
38
  unsigned char VoltageCell9;   // 
67
  unsigned char VoltageCell9;   // 
39
  unsigned char VoltageCell10;  // 
68
  unsigned char VoltageCell10;  // 
40
  unsigned char VoltageCell11;  // 
69
  unsigned char VoltageCell11;  // 
41
  unsigned char VoltageCell12;  // 
70
  unsigned char VoltageCell12;  // 
42
  unsigned char VoltageCell13;  // 
71
  unsigned char VoltageCell13;  // 
43
  unsigned char VoltageCell14;  // 
72
  unsigned char VoltageCell14;  // 
44
  unsigned int  Battery1;               // 51  = 5,1V
73
  unsigned int  Battery1;               // 51  = 5,1V
45
  unsigned int  Battery2;               // 51  = 5,1V
74
  unsigned int  Battery2;               // 51  = 5,1V
46
  unsigned char Temperature1;   // 44 = 24°C, 0 = -20°C
75
  unsigned char Temperature1;   // 44 = 24°C, 0 = -20°C
47
  unsigned char Temperature2;   // 44 = 24°C, 0 = -20°C
76
  unsigned char Temperature2;   // 44 = 24°C, 0 = -20°C
48
  unsigned int  Altitude;      
77
  unsigned int  Altitude;      
49
  unsigned int  Current;                // 1 = 0.1A
78
  unsigned int  Current;                // 1 = 0.1A
50
  unsigned int  InputVoltage;   // 66  = 6,6V
79
  unsigned int  InputVoltage;   // 66  = 6,6V
51
  unsigned int  Capacity;               // 1  = 10mAh
80
  unsigned int  Capacity;               // 1  = 10mAh
52
  unsigned int  m_sec;              // 3000 = 0
81
  unsigned int  m_sec;              // 30000 = 0
53
  unsigned int  m_3sec;             // 3000 = 0
82
  unsigned int  m_3sec;             // 120 = 0
54
  unsigned char NullByte1;      // 0x00
83
  unsigned char NullByte1;      // 0x00
55
  unsigned char NullByte2;      // 0x00
84
  unsigned char NullByte2;      // 0x00
56
  unsigned char EndByte;                // 0x7D
85
  unsigned char EndByte;                // 0x7D
57
} ElectricAirPacket_t;
86
} ElectricAirPacket_t;
-
 
87
 
58
 
88
 
59
typedef struct
89
typedef struct
60
{
90
{
61
  unsigned char StartByte;      // 0x7C
91
  unsigned char StartByte;      // 0x7C
62
  unsigned char Packet_ID;      // 0x89  - Vario ID 
92
  unsigned char Packet_ID;      // 0x89  - Vario ID 
63
  unsigned char WarnBeep;       // Anzahl der Töne 0..36
93
  unsigned char WarnBeep;       // Anzahl der Töne 0..36
64
  unsigned int Altitude;            // 500 = 0m
94
  unsigned int Altitude;            // 500 = 0m
65
  unsigned int MaxAltitude;         // 500 = 0m
95
  unsigned int MaxAltitude;         // 500 = 0m
66
  unsigned int MinAltitude;         // 500 = 0m
96
  unsigned int MinAltitude;         // 500 = 0m
67
  unsigned int m_sec;               // 3000 = 0
97
  unsigned int m_sec;               // 30000 = 0
68
  unsigned int m_3sec;              // 3000 = 0
98
  unsigned int m_3sec;              // 30000 = 0
69
  unsigned int m_10sec;             // 3000 = 0
99
  unsigned int m_10sec;         // 
70
  unsigned char NullByte;       // 0x00
100
  unsigned char NullByte;       // 0x00
71
  unsigned char EndByte;                // 0x7D
101
  unsigned char EndByte;                // 0x7D
72
} VarioPacket_t;
102
} VarioPacket_t;
73
 
103
 
74
typedef struct
104
typedef struct
75
{
105
{
76
  unsigned char StartByte;  //0         // 0x7C
106
  unsigned char StartByte;  //0         // 0x7C
77
  unsigned char Packet_ID;  //1         // 0x89  - Vario ID 
107
  unsigned char Packet_ID;  //1         // 0x89  - Vario ID 
78
  unsigned char WarnBeep;   //2         // Anzahl der Töne 0..36
108
  unsigned char WarnBeep;   //2         // Anzahl der Töne 0..36
79
  unsigned char Heading;        //3     // 1 = 2°
109
  unsigned char Heading;        //3     // 1 = 2°
80
  unsigned int Speed;           //4+5   // in km/h
110
  unsigned int Speed;           //4+5   // in km/h
81
  unsigned char Lat_North;      //6    
111
  unsigned char Lat_North;      //6    
82
  unsigned char Lat_G;      //7
112
  unsigned char Lat_G;      //7
83
  unsigned char Lat_M;      //8
113
  unsigned char Lat_M;      //8
84
  unsigned char Lat_Sek1;       //9    
114
  unsigned char Lat_Sek1;       //9    
85
  unsigned char Lat_Sek2;       //10    
115
  unsigned char Lat_Sek2;       //10    
86
  unsigned char Lon_East;       //11    
116
  unsigned char Lon_East;       //11    
87
  unsigned char Lon_G;      //12
117
  unsigned char Lon_G;      //12
88
  unsigned char Lon_M;      //13
118
  unsigned char Lon_M;      //13
89
  unsigned char Lon_Sek1;       //14    
119
  unsigned char Lon_Sek1;       //14    
90
  unsigned char Lon_Sek2;       //15    
120
  unsigned char Lon_Sek2;       //15    
91
  unsigned int Distance;        //16+17    // 9000 = 0m
121
  unsigned int Distance;        //16+17    // 9000 = 0m
92
  unsigned int Altitude;        //18+19    // 500 = 0m
122
  unsigned int Altitude;        //18+19    // 500 = 0m
93
  unsigned int m_sec;           //20+21    // 3000 = 0
123
  unsigned int m_sec;           //20+21    // 3000 = 0
94
  unsigned int m_3sec;          //22+23    // 3000 = 0
124
  unsigned int  m_3sec;         // 120 = 0
95
  unsigned int m_10sec;         //24+25    // 3000 = 0
125
  unsigned int  m_10sec;                // 
96
  unsigned char NullByte;       // 0x00
126
  unsigned char NullByte;       // 0x00
97
  unsigned char NullByte1;      // 0x00
127
  unsigned char NullByte1;      // 0x00
98
  unsigned char EndByte;                // 0x7D
128
  unsigned char EndByte;                // 0x7D
99
} GPSPacket_t;
129
} GPSPacket_t;
100
 
130
 
101
typedef struct
131
typedef struct
102
{
132
{
103
  unsigned char StartByte;      // 0x7B
133
  unsigned char StartByte;      // 0x7B
104
  unsigned char Packet_ID;      // 
134
  unsigned char Packet_ID;      // 
105
  unsigned char WarnBeep;       // Anzahl der Töne 0..36
135
  unsigned char WarnBeep;       // Anzahl der Töne 0..36
106
  char Text[8*21];
136
  char Text[8*21];
107
  unsigned char EndByte;                // 0x7D
137
  unsigned char EndByte;                // 0x7D
108
} ASCIIPacket_t;
138
} ASCIIPacket_t;
109
 
139
 
110
 
140
 
111
 
141
 
112
extern GPSPacket_t GPSPacket;
142
extern GPSPacket_t GPSPacket;
113
extern VarioPacket_t VarioPacket;
143
extern VarioPacket_t VarioPacket;
114
extern ASCIIPacket_t ASCIIPacket;
144
extern ASCIIPacket_t ASCIIPacket;
115
extern ElectricAirPacket_t ElectricAirPacket;
145
extern ElectricAirPacket_t ElectricAirPacket;
-
 
146
extern HoTTGeneral_t HoTTGeneral;
116
 
147
 
117
#define HOTT_VARIO_PACKET_ID    0x89
148
#define HOTT_VARIO_PACKET_ID            0x89
118
#define HOTT_GPS_PACKET_ID              0x8A
149
#define HOTT_GPS_PACKET_ID                      0x8A
-
 
150
#define HOTT_ELECTRIC_AIR_PACKET_ID     0x8E
119
#define HOTT_ELECTRIC_AIR_PACKET_ID     0x8E
151
#define HOTT_GENERAL_PACKET_ID          0x8D
120
 
152
 
121
#endif 
153
#endif 
122
#endif
154
#endif
123
 
155
 
124
 
156