Esempio n. 1
0
void ApplicationSettings::init(){
  checksum = sizeof(*this) ^ 0xffffffff;
  if(settingsInFlash())
    loadFromFlash();
  else
    reset();
}
Esempio n. 2
0
void CalibrationTable::init(void)
{
	int i;

	if (true == flashGood())
	{
		loadFromFlash();
		updateFastCal();
	}else
	{
		for (i=0; i<CALIBRATION_TABLE_SIZE; i++)
		{
			table[i].value=0;
			table[i].error=CALIBRATION_ERROR_NOT_SET;
		}
	}
	return;
}
Esempio n. 3
0
void CalibrationTable::saveToFlash(void)
{
	FlashCalData_t data;
	int i;
	for (i=0; i<CALIBRATION_TABLE_SIZE; i++ )
	{
		data.table[i]=(uint16_t)table[i].value;
	}
	data.status=true;

	LOG("Writting Calbiration to Flash");
	nvmWriteCalTable(&data,sizeof(data));

	memset(&data,0,sizeof(data));
	memcpy(&data, &NVM->CalibrationTable,sizeof(data));
	createFastCal();

	LOG("after writting status is %d",data.status);
	loadFromFlash();

}