Rev 1175 | Rev 1210 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1175 | Rev 1209 | ||
---|---|---|---|
Line 168... | Line 168... | ||
168 | printf("\n\rFlightControl\n\rHardware:%d.%d\n\rSoftware:V%d.%d%c ",PlatinenVersion/10,PlatinenVersion%10, VERSION_MAJOR, VERSION_MINOR,VERSION_PATCH + 'a'); |
168 | printf("\n\rFlightControl\n\rHardware:%d.%d\n\rSoftware:V%d.%d%c ",PlatinenVersion/10,PlatinenVersion%10, VERSION_MAJOR, VERSION_MINOR,VERSION_PATCH + 'a'); |
169 | if(UCSR1A == 0x20 && UCSR1C == 0x06) // initial Values for 644P |
169 | if(UCSR1A == 0x20 && UCSR1C == 0x06) // initial Values for 644P |
170 | { |
170 | { |
171 | Uart1Init(); |
171 | Uart1Init(); |
172 | } |
172 | } |
173 | printf("\n\r=============================="); |
- | |
174 | GRN_ON; |
173 | GRN_ON; |
175 | ReadParameterSet(3, (unsigned char *) &EE_Parameter.Kanalbelegung[0], 9); // read only the first bytes |
174 | ReadParameterSet(3, (unsigned char *) &EE_Parameter.Kanalbelegung[0], 9); // read only the first bytes |
Line -... | Line 175... | ||
- | 175 | ||
- | 176 | if(eeprom_read_byte(&EEPromArray[EEPROM_ADR_MIXER_REVISION]) == EE_MIXER_REVISION) |
|
- | 177 | { |
|
- | 178 | unsigned char i; |
|
- | 179 | RequiredMotors = 0; |
|
- | 180 | eeprom_read_block(&Mixer, &EEPromArray[EEPROM_ADR_MIXER_TABLE], sizeof(Mixer)); |
|
- | 181 | for(i=0; i<16;i++) { if(Mixer.Motor[i][0] > 0) RequiredMotors++;} |
|
- | 182 | } |
|
- | 183 | else // default |
|
- | 184 | { |
|
- | 185 | unsigned char i; |
|
- | 186 | for(i=0; i<16;i++) { Mixer.Motor[i][0] = 0;Mixer.Motor[i][1] = 0;Mixer.Motor[i][2] = 0;Mixer.Motor[i][3] = 0;}; |
|
- | 187 | // default = Quadro |
|
- | 188 | Mixer.Motor[0][0] = 64; Mixer.Motor[0][1] = +64; Mixer.Motor[0][2] = 0; Mixer.Motor[0][3] = +64; |
|
- | 189 | Mixer.Motor[1][0] = 64; Mixer.Motor[1][1] = -64; Mixer.Motor[1][2] = 0; Mixer.Motor[1][3] = +64; |
|
- | 190 | Mixer.Motor[2][0] = 64; Mixer.Motor[2][1] = 0; Mixer.Motor[2][2] = -64; Mixer.Motor[2][3] = -64; |
|
- | 191 | Mixer.Motor[3][0] = 64; Mixer.Motor[3][1] = 0; Mixer.Motor[3][2] = +64; Mixer.Motor[3][3] = -64; |
|
- | 192 | memcpy(Mixer.Name, "Quadro\0", 11); |
|
- | 193 | eeprom_write_block(&Mixer, &EEPromArray[EEPROM_ADR_MIXER_TABLE], sizeof(Mixer)); |
|
- | 194 | eeprom_write_byte(&EEPromArray[EEPROM_ADR_MIXER_REVISION],EE_MIXER_REVISION); // Länge der Datensätze merken |
|
- | 195 | } |
|
- | 196 | printf("\n\rMixer-Config: '%s' (%u Motors)",Mixer.Name,RequiredMotors); |
|
176 | 197 | printf("\n\r=============================="); |
|
177 | if(eeprom_read_byte(&EEPromArray[EEPROM_ADR_VALID]) != EE_DATENREVISION) |
198 | if(eeprom_read_byte(&EEPromArray[EEPROM_ADR_VALID]) != EE_DATENREVISION) |
178 | { |
199 | { |
179 | DefaultKonstanten1(); |
200 | DefaultKonstanten1(); |
180 | printf("\n\rInit. EEPROM"); |
201 | printf("\n\rInit. EEPROM"); |
Line 248... | Line 269... | ||
248 | while (1) |
269 | while (1) |
249 | { |
270 | { |
250 | if(UpdateMotor && AdReady) // ReglerIntervall |
271 | if(UpdateMotor && AdReady) // ReglerIntervall |
251 | { |
272 | { |
252 | UpdateMotor=0; |
273 | UpdateMotor=0; |
253 | //J3High; |
- | |
254 | if(WinkelOut.CalcState) CalMk3Mag(); |
274 | if(WinkelOut.CalcState) CalMk3Mag(); |
255 | else MotorRegler(); |
275 | else MotorRegler(); |
256 | //J3Low; |
- | |
257 | SendMotorData(); |
276 | SendMotorData(); |
258 | ROT_OFF; |
277 | ROT_OFF; |
259 | if(PcZugriff) PcZugriff--; |
278 | if(PcZugriff) PcZugriff--; |
260 | else |
279 | else |
261 | { |
280 | { |