Subversion Repositories FlightCtrl

Rev

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
              {