Rev 2355 | Rev 2377 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2355 | Rev 2373 | ||
---|---|---|---|
Line 81... | Line 81... | ||
81 | 81 | ||
82 | #define VARIO_ZERO 30000 |
82 | #define VARIO_ZERO 30000 |
83 | unsigned char NaviData_WaypointIndex = 0, NaviData_WaypointNumber = 0, NaviData_TargetHoldTime = 0; |
83 | unsigned char NaviData_WaypointIndex = 0, NaviData_WaypointNumber = 0, NaviData_TargetHoldTime = 0; |
Line -... | Line 84... | ||
- | 84 | unsigned int NaviData_TargetDistance = 0; |
|
- | 85 | ||
- | 86 | unsigned char MaxBlTemperture = 0; |
|
- | 87 | unsigned char MinBlTemperture = 0; |
|
84 | unsigned int NaviData_TargetDistance = 0; |
88 | unsigned char HottestBl = 0; |
85 | 89 | ||
86 | GPSPacket_t GPSPacket; |
90 | GPSPacket_t GPSPacket; |
87 | VarioPacket_t VarioPacket; |
91 | VarioPacket_t VarioPacket; |
88 | ASCIIPacket_t ASCIIPacket; |
92 | ASCIIPacket_t ASCIIPacket; |
Line 167... | Line 171... | ||
167 | {SPEAK_MAX_ALTITUD,1},// "Max Altitude! \0" // 29 |
171 | {SPEAK_MAX_ALTITUD,1},// "Max Altitude! \0" // 29 |
168 | {SPEAK_GPS_FIX,1}// "no GPS Fix, // 30 |
172 | {SPEAK_GPS_FIX,1}// "no GPS Fix, // 30 |
169 | }; |
173 | }; |
Line 170... | Line -... | ||
170 | - | ||
171 | - | ||
172 | unsigned char MaxBlTempertaure = 0; |
- | |
173 | unsigned char MinBlTempertaure = 0; |
- | |
174 | unsigned char HottestBl = 0; |
174 | |
175 | 175 | ||
176 | void GetHottestBl(void) |
176 | void GetHottestBl(void) |
177 | { |
177 | { |
178 | static unsigned char search = 0,tmp_max,tmp_min,who; |
178 | static unsigned char search = 0,tmp_max,tmp_min,who; |
179 | if(Motor[search].Temperature > tmp_max) { tmp_max = Motor[search].Temperature; who = search;} |
179 | if(Motor[search].Temperature > tmp_max) { tmp_max = Motor[search].Temperature; who = search;} |
180 | else |
180 | else |
181 | if(Motor[search].Temperature) if(Motor[search].Temperature < tmp_min) tmp_min = Motor[search].Temperature; |
181 | if(Motor[search].Temperature) if(Motor[search].Temperature < tmp_min) tmp_min = Motor[search].Temperature; |
182 | if(++search > MAX_MOTORS) |
182 | if(++search >= MAX_MOTORS) |
183 | { |
183 | { |
184 | search = 0; |
184 | search = 0; |
185 | if(tmp_min != 255) MinBlTempertaure = tmp_min; else MinBlTempertaure = 0; |
185 | if(tmp_min != 255) MinBlTemperture = tmp_min; else MinBlTemperture = 0; |
186 | MaxBlTempertaure = tmp_max; |
186 | MaxBlTemperture = tmp_max; |
187 | HottestBl = who; |
187 | HottestBl = who; |
188 | tmp_min = 255; |
188 | tmp_min = 255; |
189 | tmp_max = 0; |
189 | tmp_max = 0; |
Line 422... | Line 422... | ||
422 | ElectricAirPacket.VoltageCell13 = ElectricAirPacket.VoltageCell6; |
422 | ElectricAirPacket.VoltageCell13 = ElectricAirPacket.VoltageCell6; |
423 | ElectricAirPacket.VoltageCell14 = ElectricAirPacket.VoltageCell7; |
423 | ElectricAirPacket.VoltageCell14 = ElectricAirPacket.VoltageCell7; |
424 | if(!GPSPacket.WarnBeep) ElectricAirPacket.m_sec = BuildHoTT_Vario(); else ElectricAirPacket.m_sec = VARIO_ZERO; |
424 | if(!GPSPacket.WarnBeep) ElectricAirPacket.m_sec = BuildHoTT_Vario(); else ElectricAirPacket.m_sec = VARIO_ZERO; |
425 | ElectricAirPacket.m_3sec = 120; |
425 | ElectricAirPacket.m_3sec = 120; |
426 | ElectricAirPacket.InputVoltage = UBat; |
426 | ElectricAirPacket.InputVoltage = UBat; |
427 | ElectricAirPacket.Temperature1 = MinBlTempertaure + 20; |
427 | ElectricAirPacket.Temperature1 = MinBlTemperture + 20; |
428 | ElectricAirPacket.Temperature2 = MaxBlTempertaure + 20; |
428 | ElectricAirPacket.Temperature2 = MaxBlTemperture + 20; |
429 | ElectricAirPacket.Capacity = Capacity.UsedCapacity/10; |
429 | ElectricAirPacket.Capacity = Capacity.UsedCapacity/10; |
430 | ElectricAirPacket.WarnBeep = 0;//HoTT_Waring(); |
430 | // ElectricAirPacket.WarnBeep = 0;//HoTT_Waring(); |
- | 431 | ElectricAirPacket.WarnBeep = GPSPacket.WarnBeep; |
|
431 | ElectricAirPacket.Current = Capacity.ActualCurrent; |
432 | ElectricAirPacket.Current = Capacity.ActualCurrent; |
432 | HoTT_DataPointer = (unsigned char *) &ElectricAirPacket; |
433 | HoTT_DataPointer = (unsigned char *) &ElectricAirPacket; |
433 | ElectricAirPacket.FlightTimeMinutes = FlugSekunden / 60; |
434 | ElectricAirPacket.FlightTimeMinutes = FlugSekunden / 60; |
434 | ElectricAirPacket.FlightTimeSeconds = FlugSekunden % 60; |
435 | ElectricAirPacket.FlightTimeSeconds = FlugSekunden % 60; |
435 | return(sizeof(ElectricAirPacket)); |
436 | return(sizeof(ElectricAirPacket)); |
436 | break; |
437 | break; |
437 | case HOTT_GENERAL_PACKET_ID: |
438 | case HOTT_GENERAL_PACKET_ID: |
438 | GetHottestBl(); |
439 | GetHottestBl(); |
439 | HoTTGeneral.Rpm = GPSInfo.HomeDistance/100; |
440 | HoTTGeneral.Rpm = GPSInfo.HomeDistance/100; |
440 | HoTTGeneral.VoltageCell1 = ErsatzKompassInGrad / 2; |
441 | HoTTGeneral.VoltageCell1 = ErsatzKompassInGrad / 2; |
- | 442 | HoTTGeneral.VoltageCell2 = KompassValue / 2; |
|
- | 443 | //HoTTGeneral.VoltageCell3 = Magnetstaerke -> macht NC |
|
- | 444 | //HoTTGeneral.VoltageCell4 = Inclinition -> macht NC |
|
- | 445 | HoTTGeneral.VoltageCell5 = DebugOut.Analog[28]; // I2C ErrorCounter |
|
441 | HoTTGeneral.VoltageCell6 = GPSInfo.HomeBearing / 2; |
446 | HoTTGeneral.VoltageCell6 = GPSInfo.HomeBearing / 2; |
442 | if(UBat > BattLowVoltageWarning + 5) HoTTGeneral.FuelPercent = (UBat - (BattLowVoltageWarning + 6)) * 3; |
447 | if(UBat > BattLowVoltageWarning + 2) HoTTGeneral.FuelPercent = (UBat - (BattLowVoltageWarning + 2)) * 3; |
443 | else HoTTGeneral.FuelPercent = 0; |
448 | else HoTTGeneral.FuelPercent = 0; |
- | 449 | if(HoTTGeneral.FuelPercent > 100) HoTTGeneral.FuelPercent = 100; |
|
444 | HoTTGeneral.FuelCapacity = HoehenWert/100; |
450 | HoTTGeneral.FuelCapacity = NC_ErrorCode;//HoehenWert/100; // Oelpegel |
445 | if(HoTTGeneral.FuelCapacity < 0) HoTTGeneral.FuelCapacity = 0; |
451 | // if(HoTTGeneral.FuelCapacity < 0) HoTTGeneral.FuelCapacity = 0; |
446 | HoTTGeneral.Altitude = HoehenWert/100 + 500; |
452 | HoTTGeneral.Altitude = HoehenWert/100 + 500; |
447 | HoTTGeneral.Battery1 = UBat; |
453 | HoTTGeneral.Battery1 = UBat; |
448 | HoTTGeneral.Battery2 = UBat; |
454 | HoTTGeneral.Battery2 = UBat; |
449 | if(!GPSPacket.WarnBeep) HoTTGeneral.m_sec = BuildHoTT_Vario(); else HoTTGeneral.m_sec = VARIO_ZERO; |
455 | if(!GPSPacket.WarnBeep) HoTTGeneral.m_sec = BuildHoTT_Vario(); else HoTTGeneral.m_sec = VARIO_ZERO; |
450 | HoTTGeneral.m_3sec = 120; |
456 | HoTTGeneral.m_3sec = 120 + GPSPacket.WarnBeep; |
451 | HoTTGeneral.InputVoltage = UBat; |
457 | HoTTGeneral.InputVoltage = UBat; |
452 | HoTTGeneral.Temperature1 = MinBlTempertaure + 20; |
458 | HoTTGeneral.Temperature1 = MinBlTemperture + 20; |
453 | HoTTGeneral.Temperature2 = MaxBlTempertaure + 20; |
459 | HoTTGeneral.Temperature2 = MaxBlTemperture + 20; |
454 | HoTTGeneral.Capacity = Capacity.UsedCapacity/10; |
460 | HoTTGeneral.Capacity = Capacity.UsedCapacity/10; |
455 | HoTTGeneral.WarnBeep = 0;//HoTT_Waring(); |
461 | HoTTGeneral.WarnBeep = 0;//HoTT_Waring(); |
456 | HoTTGeneral.Current = Capacity.ActualCurrent; |
462 | HoTTGeneral.Current = Capacity.ActualCurrent; |
457 | //HoTTGeneral.ErrorNumber = HoTTErrorCode(); |
463 | //HoTTGeneral.ErrorNumber = HoTTErrorCode(); |
458 | HoTT_DataPointer = (unsigned char *) &HoTTGeneral; |
464 | HoTT_DataPointer = (unsigned char *) &HoTTGeneral; |