Subversion Repositories FlightCtrl

Rev

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

Rev 371 Rev 373
Line 49... Line 49...
49
// +  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
49
// +  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
50
// +  POSSIBILITY OF SUCH DAMAGE. 
50
// +  POSSIBILITY OF SUCH DAMAGE. 
51
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
51
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
52
#include "main.h"
52
#include "main.h"
Line 53... Line 53...
53
 
53
 
54
// unsigned char EEPromArray[E2END+1] EEMEM;
54
unsigned char EEPromArray[10] EEMEM;
-
 
55
struct mk_param_struct EEParameterArray[5] EEMEM;
Line 55... Line 56...
55
unsigned char EEPromArray[501] EEMEM;
56
 
56
 
57
 
57
// -- Parametersatz aus EEPROM lesen ---
58
// -- Parametersatz aus EEPROM lesen ---
58
// number [0..5]   
59
// number [0..5]   
59
void ReadParameterSet(unsigned char number, unsigned char *buffer, unsigned char length)
60
void ReadParameterSet(unsigned char number, unsigned char *buffer, unsigned char length)
-
 
61
{
60
{
62
   if (number > 5) number = 5;
61
   if (number > 5) number = 5;
-
 
62
   eeprom_read_block(buffer, &EEPromArray[EEPROM_ADR_PARAM_BEGIN + length * number], length);
63
   number--;            // Auf Index 0 bis 4 anpassen
Line 63... Line 64...
63
 
64
   eeprom_read_block(buffer, &EEParameterArray[number], length);
64
}
65
}
65
 
66
 
66
 
67
 
67
// -- Parametersatz ins EEPROM schreiben ---
68
// -- Parametersatz ins EEPROM schreiben ---
-
 
69
// number [0..5]   
68
// number [0..5]   
70
void WriteParameterSet(unsigned char number, unsigned char *buffer, unsigned char length)
Line 69... Line 71...
69
void WriteParameterSet(unsigned char number, unsigned char *buffer, unsigned char length)
71
{
70
{
72
   if (number > 5) number = 5;
Line 71... Line 73...
71
   if (number > 5) number = 5; 
73
   number--;            // Auf Index 0 bis 4 anpassen
Line 124... Line 126...
124
   
126
   
125
        printf("\n\rFlightControl V%d.%d ", VERSION_HAUPTVERSION, VERSION_NEBENVERSION);
127
        printf("\n\rFlightControl V%d.%d ", VERSION_HAUPTVERSION, VERSION_NEBENVERSION);
126
        printf("\n\r==============================");
128
        printf("\n\r==============================");
Line 127... Line 129...
127
        GRN_ON;
129
        GRN_ON;
128
 
130
 
129
    if(eeprom_read_byte(&EEPromArray[EEPROM_ADR_VALID]) != 59) // seit V 0.60 
131
    if(eeprom_read_byte(&EEPromArray[EEPROM_ADR_VALID]) != 60) // seit V 0.60 
130
        {
132
        {
131
          printf("\n\rInit. EEPROM: Generiere Default-Parameter...");
133
          printf("\n\rInit. EEPROM: Generiere Default-Parameter...");
132
          DefaultKonstanten1();
134
          DefaultKonstanten1();
133
          for (unsigned char i=0;i<6;i++)  
135
          for (unsigned char i=0;i<6;i++)  
134
      {
136
      {
135
       if(i==2) DefaultKonstanten2();
137
       if(i==2) DefaultKonstanten2();
136
       WriteParameterSet(i, (unsigned char *) &EE_Parameter.Kanalbelegung[0], STRUCT_PARAM_LAENGE);
138
       WriteParameterSet(i, (unsigned char *) &EE_Parameter.Kanalbelegung[0], sizeof(struct mk_param_struct));
137
      }
139
      }
138
          eeprom_write_byte(&EEPromArray[EEPROM_ADR_ACTIVE_SET], 1);
140
          eeprom_write_byte(&EEPromArray[EEPROM_ADR_ACTIVE_SET], 1);
Line 139... Line 141...
139
          eeprom_write_byte(&EEPromArray[EEPROM_ADR_VALID], 59);
141
          eeprom_write_byte(&EEPromArray[EEPROM_ADR_VALID], 60);
140
        }
142
        }
Line 141... Line 143...
141
       
143
       
142
        ReadParameterSet(GetActiveParamSetNumber(), (unsigned char *) &EE_Parameter.Kanalbelegung[0], STRUCT_PARAM_LAENGE);
144
        ReadParameterSet(GetActiveParamSetNumber(), (unsigned char *) &EE_Parameter.Kanalbelegung[0], sizeof(struct mk_param_struct));
143
    printf("\n\rBenutze Parametersatz %d", GetActiveParamSetNumber());
145
    printf("\n\rBenutze Parametersatz %d", GetActiveParamSetNumber());