Subversion Repositories FlightCtrl

Rev

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

Rev 991 Rev 993
Line 53... Line 53...
53
 
53
 
54
unsigned char EEPromArray[E2END+1] EEMEM;
54
unsigned char EEPromArray[E2END+1] EEMEM;
55
unsigned char PlatinenVersion = 10;
55
unsigned char PlatinenVersion = 10;
56
unsigned char SendVersionToNavi = 1;
56
unsigned char SendVersionToNavi = 1;
57
// -- Parametersatz aus EEPROM lesen ---
57
// -- Parametersatz aus EEPROM lesen ---
58
// number [0..5]   
58
// number [1..5]   
59
void ReadParameterSet(unsigned char number, unsigned char *buffer, unsigned char length)
59
void ReadParameterSet(unsigned char number, unsigned char *buffer, unsigned char length)
60
{
60
{
-
 
61
   if((number > 5)||(number < 1)) number = 3;
61
   if (number > 5) number = 5;
62
   number--;
62
   eeprom_read_block(buffer, &EEPromArray[EEPROM_ADR_PARAM_BEGIN + length * number], length);
63
   eeprom_read_block(buffer, &EEPromArray[EEPROM_ADR_PARAM_BEGIN + length * number], length);
63
   LED_Init();
64
   LED_Init();
Line 64... Line -...
64
}
-
 
65
 
65
}
66
 
66
 
67
// -- Parametersatz ins EEPROM schreiben ---
67
// -- Parametersatz ins EEPROM schreiben ---
68
// number [0..5]   
68
// number [1..5]   
69
void WriteParameterSet(unsigned char number, unsigned char *buffer, unsigned char length)
69
void WriteParameterSet(unsigned char number, unsigned char *buffer, unsigned char length)
-
 
70
{
-
 
71
   if(number > 5) number = 5;  
70
{
72
   if(number < 1) return;
71
   if(number > 5) number = 5;  
73
   number--;
72
   eeprom_write_block(buffer, &EEPromArray[EEPROM_ADR_PARAM_BEGIN + length * number], length);
74
   eeprom_write_block(buffer, &EEPromArray[EEPROM_ADR_PARAM_BEGIN + length * number], length);
73
   eeprom_write_byte(&EEPromArray[EEPROM_ADR_ACTIVE_SET], number);                              // diesen Parametersatz als aktuell merken
75
   eeprom_write_byte(&EEPromArray[EEPROM_ADR_ACTIVE_SET], number);                              // diesen Parametersatz als aktuell merken
Line 161... Line 163...
161
        printf("\n\rFlightControl\n\rHardware:%d.%d\n\rSoftware:V%d.%d%c ",PlatinenVersion/10,PlatinenVersion%10, VERSION_HAUPTVERSION, VERSION_NEBENVERSION,VERSION_INDEX + 'a');
163
        printf("\n\rFlightControl\n\rHardware:%d.%d\n\rSoftware:V%d.%d%c ",PlatinenVersion/10,PlatinenVersion%10, VERSION_HAUPTVERSION, VERSION_NEBENVERSION,VERSION_INDEX + 'a');
162
        printf("\n\r==============================");
164
        printf("\n\r==============================");
Line 163... Line 165...
163
 
165
 
Line 164... Line 166...
164
        GRN_ON;
166
        GRN_ON;
-
 
167
 
-
 
168
#define EE_DATENREVISION 72 // wird angepasst, wenn sich die EEPROM-Daten geändert haben
-
 
169
        ReadParameterSet(0, (unsigned char *) &EE_Parameter.Kanalbelegung[0], 9); // read only the first bytes
-
 
170
    // valid Stick-Settings?
-
 
171
    if(eeprom_read_byte(&EEPromArray[EEPROM_ADR_VALID]) == 255 || eeprom_read_byte(&EEPromArray[EEPROM_ADR_VALID]) < 72 ||
-
 
172
        EE_Parameter.Kanalbelegung[0] > 9 || EE_Parameter.Kanalbelegung[1] > 9 || EE_Parameter.Kanalbelegung[2] > 9 || EE_Parameter.Kanalbelegung[3] > 9)
-
 
173
           {
-
 
174
            printf("\n\rInit. EEPROM: Generating Default-Parameter and Stick-Settings...");
-
 
175
        DefaultStickMapping();
-
 
176
       }
165
 
177
    else if(eeprom_read_byte(&EEPromArray[EEPROM_ADR_VALID]) != EE_DATENREVISION) printf("\n\rInit. EEPROM: Generating Default-Parameter using old Stick Settings");
166
#define EE_DATENREVISION 71 // wird angepasst, wenn sich die EEPROM-Daten geändert haben
178
 
167
    if(eeprom_read_byte(&EEPromArray[EEPROM_ADR_VALID]) != EE_DATENREVISION)
-
 
168
        {
179
    if(eeprom_read_byte(&EEPromArray[EEPROM_ADR_VALID]) != EE_DATENREVISION)
169
          printf("\n\rInit. EEPROM: Generiere Default-Parameter...");
180
        {
170
          DefaultKonstanten1();
181
          DefaultKonstanten1();
171
          for (unsigned char i=0;i<6;i++)  
182
          for (unsigned char i=1;i<6;i++)  
172
      {
183
      {
173
       if(i==2) DefaultKonstanten2(); // Kamera
184
       if(i==2) DefaultKonstanten2(); // Kamera
174
       if(i==3) DefaultKonstanten3(); // Beginner
185
       if(i==3) DefaultKonstanten3(); // Beginner