#include <EEPROM.h>
//EEPROM
const int MAX_STRING_LENGTH = 50;
const int MAX_VALUES = 12;
const int EEPROM_START_ADDRESS = 0;
struct EEPROMData {
char value[MAX_STRING_LENGTH];
};
void saveValueToEEProm(int index, const char* value) {
EEPROMData data;
strncpy(data.value, value, MAX_STRING_LENGTH);
int address = EEPROM_START_ADDRESS + index * sizeof(data);
EEPROM.put(address, data);
}
String getConfigValue(int i) {
String result = "";
EEPROMData data;
int address = EEPROM_START_ADDRESS + i * sizeof(data);
Serial.println(address);
EEPROM.get(address, data);
if (strlen(data.value) > 0) {
result += data.value;
}
return result;
}
void setup() {
// put your setup code here, to run once:
saveValueToEEProm(3, "80");
saveValueToEEProm(4, "60");
saveValueToEEProm(5, "40");
}
void loop() {
// put your main code here, to run repeatedly:
Serial.println(getConfigValue(5));
delay(1000);
}