Пишу в EEPROM функцией.
и пытаюсь получить эти значения при запуске
При старте Serial.println(rejrab); не выводит никакого значения. Serial.println(ssid); и Serial.println(pass); выводят все как надо. Пробовал менять адреса... не помогает. В чем может быть проблема?
Код:
void save() {
String ssid=server.arg("ssid");
String pass=server.arg("pass");
int tip =server.arg("tip").toInt(); //значения 0, 1 или 2
Serial.println(tip); // значение выводится
EEPROM.begin (256);
EEPROM.write(102,tip);
sch=String(ssid).length();
EEPROM.write(130 , sch);
for(byte i = 0; i < sch; i++) { EEPROM.write(131+i*2, highByte(ssid[i])); EEPROM.write(131+i*2+1, lowByte(ssid[i]));}
sch=String(pass).length();
EEPROM.write(180, sch);
for(byte i = 0; i < sch; i++) { EEPROM.write(181+i*2, highByte(pass[i])); EEPROM.write(181+i*2+1, lowByte(pass[i]));}
EEPROM.end();
delay(100);
server.send(200, "text/plain","ok");
}
Код:
EEPROM.begin (256);
....
rejrab=EEPROM.read(102);
Serial.println(rejrab); // значение не отображается
....
sch = EEPROM.read(130);
for(byte i = 0; i < sch; i++) {
hi = EEPROM.read(131+i*2);
low = EEPROM.read(131+i*2+1);
ssid[i]= word(hi, low);}
ssid[sch] = '\x0';
Serial.println(ssid); // ssid выводится
sch = EEPROM.read(180);
for(byte i = 0; i < sch; i++) {
hi = EEPROM.read(181+i*2);
low = EEPROM.read(181+i*2+1);
pass[i] = word(hi, low);}
pass[sch] = '\x0';
Serial.println(pass); // значение выводится
EEPROM.end();