Rev 2183 | Rev 2341 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2183 | Rev 2263 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | #include "libfc.h" |
1 | #include "libfc.h" |
2 | #include "printf_P.h" |
2 | #include "printf_P.h" |
3 | #include "main.h" |
3 | #include "main.h" |
4 | #include "spi.h" |
4 | #include "spi.h" |
5 | #include "capacity.h" |
5 | #include "capacity.h" |
6 | #include "jeti_ex.h" |
6 | #include "jeti_ex.h" |
7 | #include "hottmenu.h" |
7 | #include "hottmenu.h" |
Line 8... | Line 8... | ||
8 | 8 | ||
Line -... | Line 9... | ||
- | 9 | #if (defined(__AVR_ATmega1284__) || defined(__AVR_ATmega1284P__)) |
|
9 | #if (defined(__AVR_ATmega1284__) || defined(__AVR_ATmega1284P__)) |
10 | |
- | 11 | const char PROGMEM JETI_CODE[53] = |
|
- | 12 | { |
|
- | 13 | 0, // 0 |
|
- | 14 | 'O', // SPEAK_ERR_CALIBARTION 1 |
|
- | 15 | 'P', // SPEAK_ERR_RECEICER 2 |
|
- | 16 | 'Q', // SPEAK_ERR_DATABUS 3 |
|
- | 17 | 'R', // SPEAK_ERR_NAVI 4 |
|
- | 18 | 'S', // SPEAK_ERROR 5 |
|
- | 19 | 'T', // SPEAK_ERR_COMPASS 6 |
|
- | 20 | 'S', // SPEAK_ERR_SENSOR 7 |
|
- | 21 | 'V', // SPEAK_ERR_GPS 8 |
|
- | 22 | 'W', // SPEAK_ERR_MOTOR 9 |
|
- | 23 | 'H', // SPEAK_MAX_TEMPERAT 10 |
|
- | 24 | 0, // SPEAK_ALTI_REACHED 11 |
|
- | 25 | 'X', // SPEAK_WP_REACHED 12 |
|
- | 26 | 'Y', // SPEAK_NEXT_WP 13 |
|
- | 27 | 0, // SPEAK_LANDING 14 |
|
- | 28 | 'Z', // SPEAK_GPS_FIX 15 |
|
- | 29 | 'U', // SPEAK_UNDERVOLTAGE 16 |
|
- | 30 | 'E', // SPEAK_GPS_HOLD 17 |
|
- | 31 | 'F', // SPEAK_GPS_HOME 18 |
|
- | 32 | 'G', // SPEAK_GPS_OFF 19 |
|
- | 33 | 'H', // SPEAK_BEEP 20 |
|
- | 34 | 'A', // SPEAK_MIKROKOPTER 21 |
|
- | 35 | 0, // SPEAK_CAPACITY 22 |
|
- | 36 | 'I', // SPEAK_CF_OFF 23 |
|
- | 37 | 'B', // SPEAK_CALIBRATE 24 |
|
- | 38 | 'J', // SPEAK_MAX_RANGE 25 |
|
- | 39 | 'J', // SPEAK_MAX_ALTITUD 26 |
|
- | 40 | 0, // 27 |
|
- | 41 | 0, // 28 |
|
- | 42 | 0, // 29 |
|
- | 43 | 0, // 30 |
|
- | 44 | 0, // 31 |
|
- | 45 | 0, // 32 |
|
- | 46 | 0, // 33 |
|
- | 47 | 0, // 34 |
|
- | 48 | 0, // 35 |
|
- | 49 | 0, // 36 |
|
- | 50 | 0, // 37 |
|
- | 51 | 'D', // SPEAK_MK_OFF 38 |
|
- | 52 | 'L', // SPEAK_ALTITUDE_ON 39 |
|
- | 53 | 'M', // SPEAK_ALTITUDE_OFF 40 |
|
- | 54 | 0, // 41 |
|
- | 55 | 0, // 42 |
|
- | 56 | 0, // 43 |
|
- | 57 | 0, // 44 |
|
- | 58 | 0, // 45 |
|
- | 59 | 'N', // SPEAK_CF_ON 46 |
|
- | 60 | 0, // SPEAK_SINKING 47 |
|
- | 61 | 0, // SPEAK_RISING 48 |
|
- | 62 | 0, // SPEAK_HOLDING 49 |
|
- | 63 | 'K', // SPEAK_GPS_ON 50 |
|
- | 64 | 0, // SPEAK_FOLLWING 51 |
|
Line 10... | Line 65... | ||
10 | 65 | 'C' // SPEAK_STARTING 52 |
|
11 | 66 | }; |
|
12 | 67 | ||
13 | JetiExPacket_t JetiExData[JETI_EX_PARAMETER_COUNT + 1] = // Parameter count + DeviceName (ID0) |
68 | JetiExPacket_t JetiExData[JETI_EX_PARAMETER_COUNT + 1] = // Parameter count + DeviceName (ID0) |
14 | { |
69 | { |
15 | // Label[10] unit[3], data type, Data , position of decimal point |
70 | // Label[10] unit[3], data type, Data , position of decimal point |
16 | // "1234567890", "123", |
71 | // "1234567890", "123", |
17 | { "-= M K =- " , " ", 1, 0 , 0 }, // first one is device name // datatype 1 = -8192...8192 |
72 | { "-=.M_K.=-" , " ", 1, 0 , 0 }, // first one is device name // datatype 1 = -8192...8192 |
18 | { "Voltage " , "V ", 1, 0 , 1 }, // ID 1 |
73 | { "Voltage " , "V ", 1, 0 , 1 }, // ID 1 |
19 | { "Current " , "A ", 1, 0 , 1 }, // ID 2 |
74 | { "Current " , "A ", 1, 0 , 1 }, // ID 2 |
Line 31... | Line 86... | ||
31 | { "frei " , " ", 1, 0 , 3 }, // ID 14 |
86 | { "frei " , " ", 1, 0 , 3 }, // ID 14 |
32 | { "frei " , " ", 1, 0 , 3 }, // ID 15 |
87 | { "frei " , " ", 1, 0 , 3 }, // ID 15 |
33 | }; |
88 | }; |
Line -... | Line 89... | ||
- | 89 | ||
- | 90 | ||
- | 91 | void BuildJeti_Vario(void) |
|
- | 92 | { |
|
- | 93 | signed int tmp = 0; |
|
- | 94 | static signed int JetiVarioMeter = 0; |
|
- | 95 | JetiVarioMeter = (JetiVarioMeter * 3 + VarioMeter) / 4; |
|
- | 96 | ||
- | 97 | if(VarioCharacter == '+') |
|
- | 98 | { |
|
- | 99 | tmp = (AltitudeSetpointTrimming * EE_Parameter.Hoehe_Verstaerkung) / 32 + 5; |
|
- | 100 | } |
|
- | 101 | else |
|
- | 102 | if(VarioCharacter == '-') |
|
- | 103 | { |
|
- | 104 | tmp = (AltitudeSetpointTrimming * EE_Parameter.Hoehe_Verstaerkung) / 32 - 5; |
|
- | 105 | } |
|
- | 106 | else |
|
- | 107 | if((VarioCharacter == ' ') && (FC_StatusFlags & FC_STATUS_FLY)) |
|
- | 108 | { |
|
- | 109 | tmp = (JetiVarioMeter/32); |
|
- | 110 | } |
|
- | 111 | else |
|
- | 112 | if(VarioCharacter == '^') tmp = FromNC_AltitudeSpeed; |
|
- | 113 | else |
|
- | 114 | if(VarioCharacter == 'v') tmp = tmp - FromNC_AltitudeSpeed; |
|
- | 115 | ||
- | 116 | JetiExData[12].Value = tmp; |
|
- | 117 | } |
|
34 | 118 | ||
35 | 119 | ||
36 | // -------------------------------------------------------------------------------------------------- |
120 | // -------------------------------------------------------------------------------------------------- |
- | 121 | void JetiEX_Update(void) |
|
37 | void JetiEX_Update(void) |
122 | { |
Line 38... | Line 123... | ||
38 | { |
123 | |
39 | GetHottestBl(); |
124 | GetHottestBl(); |
40 | 125 | ||
Line 47... | Line 132... | ||
47 | JetiExData[7].Value = GPSInfo.Speed; |
132 | JetiExData[7].Value = GPSInfo.Speed; |
48 | JetiExData[8].Value = GPSInfo.HomeDistance / 10; |
133 | JetiExData[8].Value = GPSInfo.HomeDistance / 10; |
49 | JetiExData[9].Value = GPSInfo.HomeBearing; |
134 | JetiExData[9].Value = GPSInfo.HomeBearing; |
50 | JetiExData[10].Value = MaxBlTempertaure; |
135 | JetiExData[10].Value = MaxBlTempertaure; |
51 | JetiExData[11].Value = EarthMagneticField; |
136 | JetiExData[11].Value = EarthMagneticField; |
52 | JetiExData[12].Value = 0; |
137 | // JetiExData[12].Value = Vario; |
53 | JetiExData[13].Value = NC_ErrorCode; |
138 | JetiExData[13].Value = NC_ErrorCode; |
54 | - | ||
55 | } |
139 | } |
56 | #endif |
140 | #endif |