Subversion Repositories FlightCtrl

Rev

Rev 1941 | Rev 1943 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1941 Rev 1942
Line 61... Line 61...
61
  if(MotorenEin && NC_ErrorCode)                return(VOICE_BEEP);
61
  if(MotorenEin && NC_ErrorCode)                return(VOICE_BEEP);
62
  return(0);
62
  return(0);
63
}
63
}
Line 64... Line 64...
64
 
64
 
65
//---------------------------------------------------------------
65
//---------------------------------------------------------------
66
unsigned char NC_Fills_HoTT_Telemety()
66
void NC_Fills_HoTT_Telemety(void)
67
{
67
{
68
 unsigned char *ptr;
68
 unsigned char *ptr;
69
 unsigned char max = 0,i,z;
69
 unsigned char max = 0,i,z;
70
 switch(FromNaviCtrl.Param.Byte[11])
70
 switch(FromNaviCtrl.Param.Byte[11])
Line 90... Line 90...
90
   ptr[z] = FromNaviCtrl.Param.Byte[2+i];
90
   ptr[z] = FromNaviCtrl.Param.Byte[2+i];
91
   z++;
91
   z++;
92
  }
92
  }
93
}
93
}
Line -... Line 94...
-
 
94
 
-
 
95
unsigned int BuildHoTT_Vario(void)
-
 
96
{
-
 
97
 unsigned int tmp;
-
 
98
 if(WaypointTrimming == 0)
-
 
99
 {
-
 
100
  tmp = 30000 + (AltitudeSetpointTrimming * EE_Parameter.Hoehe_Verstaerkung) / 3;
-
 
101
  if(tmp < 30000 && tmp > 30000 - 50) tmp = 30000 - 50; // weil es erst bei < 0,5m/sek piept
-
 
102
 }
94
 
103
 else
-
 
104
 if(WaypointTrimming > 0) tmp = 30000 + FromNC_AltitudeSpeed * 10;
-
 
105
 else tmp = 30000 - FromNC_AltitudeSpeed * 10;
-
 
106
 return(tmp);
Line -... Line 107...
-
 
107
}
95
//---------------------------------------------------------------
108
 
96
 
109
//---------------------------------------------------------------
-
 
110
unsigned char HoTT_Telemety(unsigned char packet_request)
-
 
111
{
97
unsigned char HoTT_Telemety(unsigned char packet_request)
112
 static unsigned char search = 0,max,min,tmp_max,tmp_min;
98
{
113
 
99
 switch(packet_request)
114
 switch(packet_request)
100
 {
115
 {
101
  case HOTT_VARIO_PACKET_ID:
116
  case HOTT_VARIO_PACKET_ID:
102
                VarioPacket.Altitude = HoehenWert/100 + 500;  
117
                VarioPacket.Altitude = HoehenWert/100 + 500;  
103
                VarioPacket.m_sec = GPSInfo.Speed+120;
118
                VarioPacket.m_sec = BuildHoTT_Vario();
104
                GPSPacket.m_3sec = 120;
119
                GPSPacket.m_3sec = 120;
105
                GPSPacket.m_10sec = 120;
120
                GPSPacket.m_10sec = 120;
106
                if (VarioPacket.Altitude < VarioPacket.MinAltitude) VarioPacket.MinAltitude = VarioPacket.Altitude;
121
                if (VarioPacket.Altitude < VarioPacket.MinAltitude) VarioPacket.MinAltitude = VarioPacket.Altitude;
Line 113... Line 128...
113
  case HOTT_GPS_PACKET_ID:
128
  case HOTT_GPS_PACKET_ID:
114
                GPSPacket.Altitude = HoehenWert/100 + 500;  
129
                GPSPacket.Altitude = HoehenWert/100 + 500;  
115
//              GPSPacket.Distance = GPSInfo.HomeDistance/10;
130
//              GPSPacket.Distance = GPSInfo.HomeDistance/10;
116
//              GPSPacket.Heading = GPSInfo.HomeBearing/2;//KompassValue/2;
131
//              GPSPacket.Heading = GPSInfo.HomeBearing/2;//KompassValue/2;
117
//              GPSPacket.Speed = (GPSInfo.Speed * 36) / 10;
132
//              GPSPacket.Speed = (GPSInfo.Speed * 36) / 10;
118
                GPSPacket.m_sec = GPSInfo.Speed+120;
133
                GPSPacket.m_sec = BuildHoTT_Vario();
119
                GPSPacket.m_3sec = 120;
134
                GPSPacket.m_3sec = 120;
120
                GPSPacket.m_10sec = 0;
135
                GPSPacket.m_10sec = 0;
121
                GPSPacket.WarnBeep = HoTT_Waring();
136
                GPSPacket.WarnBeep = HoTT_Waring();
122
                HoTT_DataPointer = (unsigned char *) &GPSPacket;
137
                HoTT_DataPointer = (unsigned char *) &GPSPacket;
123
                return(sizeof(GPSPacket));  
138
                return(sizeof(GPSPacket));  
124
                break;
139
                break;
125
  case HOTT_ELECTRIC_AIR_PACKET_ID:
140
  case HOTT_ELECTRIC_AIR_PACKET_ID:
-
 
141
 
-
 
142
                if(Motor[search].Temperature > tmp_max) tmp_max = Motor[search].Temperature;
-
 
143
                else
-
 
144
                if(Motor[search].Temperature) if(Motor[search].Temperature < tmp_min) tmp_min = Motor[search].Temperature;
-
 
145
                if(++search > MAX_MOTORS)
-
 
146
                {
-
 
147
                 search = 0;
-
 
148
                 if(tmp_min != 255) min = tmp_min; else min = 0;
-
 
149
                 max = tmp_max;
-
 
150
                 tmp_min = 255;
-
 
151
                 tmp_max = 0;
-
 
152
                 }
126
                ElectricAirPacket.Altitude = HoehenWert/100 + 500;
153
                ElectricAirPacket.Altitude = HoehenWert/100 + 500;
127
                ElectricAirPacket.Battery1 = UBat;
154
                ElectricAirPacket.Battery1 = UBat;
128
                ElectricAirPacket.Battery2 = UBat;
155
                ElectricAirPacket.Battery2 = UBat;
129
                ElectricAirPacket.m_sec = GPSInfo.Speed+120;
156
                ElectricAirPacket.m_sec = BuildHoTT_Vario();
130
                ElectricAirPacket.m_3sec = 120;
157
                ElectricAirPacket.m_3sec = 120;
131
                ElectricAirPacket.InputVoltage = UBat;
158
                ElectricAirPacket.InputVoltage = UBat;
132
                ElectricAirPacket.Temperature1 = Motor[0].Temperature + 20;
159
                ElectricAirPacket.Temperature1 = min + 20;
133
                ElectricAirPacket.Temperature2 = Motor[1].Temperature + 20;
160
                ElectricAirPacket.Temperature2 = max + 20;
134
                ElectricAirPacket.Capacity = Capacity.UsedCapacity/10;
161
                ElectricAirPacket.Capacity = Capacity.UsedCapacity/10;
135
                ElectricAirPacket.WarnBeep = HoTT_Waring();
162
                ElectricAirPacket.WarnBeep = HoTT_Waring();
136
                ElectricAirPacket.Current = Capacity.ActualCurrent;
163
                ElectricAirPacket.Current = Capacity.ActualCurrent;
137
                HoTT_DataPointer = (unsigned char *) &ElectricAirPacket;
164
                HoTT_DataPointer = (unsigned char *) &ElectricAirPacket;
138
                return(sizeof(ElectricAirPacket));
165
                return(sizeof(ElectricAirPacket));