Page 345 - 2
P. 345

uint16_t i = 32000;
                #endif
                uint16_t flashsum = 0;
                uint8_t pbyt;
                while(i--) {
                  pbyt = pgm_read_byte(i);         // calculate flash checksum
                  flashsum += pbyt;
                  flashsum ^= (pbyt<<8);
                }
              #endif
              #ifdef MULTIPLE_CONFIGURATION_PROFILES
                global_conf.currentSet=2;
              #else
                global_conf.currentSet=0;
              #endif
              while(1) {                                                    // check settings integrity
              #ifndef NO_FLASH_CHECK
                if(readEEPROM()) {                                            // check current setting integrit
            y
                  if(flashsum != global_conf.flashsum) update_constants();  // update constants if firmware is
            changed and integrity is OK
                }
              #else
                readEEPROM();                                                 // check current setting integri
            ty
              #endif
                if(global_conf.currentSet == 0) break;                     // all checks is done
                global_conf.currentSet--;                                  // next setting for check
              }
              readGlobalSet();                              // reload global settings for get last profile numb
            er
              #ifndef NO_FLASH_CHECK
                if(flashsum != global_conf.flashsum) {
                  global_conf.flashsum = flashsum;          // new flash sum
                  writeGlobalSet(1);                       // update flash sum in global config
                }
              #endif
              readEEPROM();                                   // load setting data from last used profile
              blinkLED(2,40,global_conf.currentSet+1);


              #if GPS
                recallGPSconf();                             //Load GPS configuration parameteres
              #endif


              configureReceiver();


                                                         - 345 -
   340   341   342   343   344   345   346   347   348   349   350