eeprom handling works now

This commit is contained in:
Wolfgang Hottgenroth
2017-06-12 11:52:46 +02:00
parent cbb8f8d188
commit 404b3f7f7a
3 changed files with 61 additions and 43 deletions

View File

@ -15,7 +15,7 @@
const uint32_t STORAGE_MAGIC = 0xaffe0001;
const uint32_t STORAGE_MAGIC = 0xaffe0002;
@ -37,21 +37,6 @@ typedef struct {
tStorage storage;
void updateDisplay(void *handle) {
static uint8_t eetoggle = 0;
if (eetoggle == 0) {
eetoggle = 1;
eepromRead(STORAGE_ADDRESS, &storage, sizeof(storage));
} else {
eetoggle = 0;
storage.magic = STORAGE_MAGIC;
storage.savedTemperature = 1;
storage.savedTime = 2;
eepromWrite(STORAGE_ADDRESS, &storage, sizeof(storage));
}
tDisplay *lDisplay = (tDisplay*) handle;
lDisplay->toggle ^= 0x01;
char buf[32];
@ -73,14 +58,14 @@ void updateDisplay(void *handle) {
}
LED_P8x16Str(0, 4, buf);
// sprintf(buf, " %5ds", lDisplay->overrunTime);
static uint32_t h = 0;
static uint32_t c = 0;
uint32_t i = HAL_GetTick();
sprintf(buf, "%d %d %d", c, i, i-h);
h = i;
c++;
LED_P8x16Str(0, 6, buf);
sprintf(buf, " %5ds", lDisplay->overrunTime);
// static uint32_t h = 0;
// static uint32_t c = 0;
// uint32_t i = HAL_GetTick();
// sprintf(buf, "%d %d %d", c, i, i-h);
// h = i;
// c++;
// LED_P8x16Str(0, 6, buf);
}
@ -145,16 +130,16 @@ void displayIncValue() {
reEnableSetModeTimer();
if (display.targetTemperature < 100) {
display.targetTemperature++;
// storage.savedTemperature = display.targetTemperature;
// eepromWrite(STORAGE_ADDRESS, &storage, sizeof(storage));
storage.savedTemperature = display.targetTemperature;
eepromWrite(STORAGE_ADDRESS, &storage, sizeof(storage));
}
}
if (display.setModeTime == 1) {
reEnableSetModeTimer();
if (display.targetTime < 999) {
display.targetTime += 10;
// storage.savedTime = display.targetTime;
// eepromWrite(STORAGE_ADDRESS, &storage, sizeof(storage));
storage.savedTime = display.targetTime;
eepromWrite(STORAGE_ADDRESS, &storage, sizeof(storage));
}
}
}
@ -164,16 +149,16 @@ void displayDecValue() {
reEnableSetModeTimer();
if (display.targetTemperature > 0) {
display.targetTemperature--;
// storage.savedTemperature = display.targetTemperature;
// eepromWrite(STORAGE_ADDRESS, &storage, sizeof(storage));
storage.savedTemperature = display.targetTemperature;
eepromWrite(STORAGE_ADDRESS, &storage, sizeof(storage));
}
}
if (display.setModeTime == 1) {
reEnableSetModeTimer();
if (display.targetTime >= 10) {
display.targetTime -= 10;
// storage.savedTime = display.targetTime;
// eepromWrite(STORAGE_ADDRESS, &storage, sizeof(storage));
storage.savedTime = display.targetTime;
eepromWrite(STORAGE_ADDRESS, &storage, sizeof(storage));
}
}
}