ESP8266 - nelze zapsat do EEPROM

Petr Zapadlo zapik na email.cz
Pondělí Listopad 18 08:17:52 CET 2019


Ahoj všem,

tak pochopitelně byla chyba mezi klávesnicí a myší - měl jsem blbě 
zadaný modul. Mám Wemos D1 mini a zadaný jsem měl D1 mini pro.

Liší se to velikostí flash - na mini je jen 4MB, na pro 16MB. Takže 
celkem pochopitelně, když zapisuji a čtu neexistující část paměti, tak 
to funguje špatně - sypu si popel na hlavu.

Zajímavé, že ve starším toolchainu to fungovalo.

Petr


Dne 16.11.2019 v 22:34 Petr Zapadlo napsal(a):
> Zdravím,
>
> trápím se od včerejška s tím, že mi nejde zapsat do EEPROM ESP8266.  
> (Že je to emulované vím, mám kolem toho nastudované co jsem našel)
>
> Zkusil jsem použít starší verze toolchainu a ejhle, funguje to.
>
> Tady to nefunguje:
>
> PLATFORM: Espressif 8266 2.2.1 > WeMos D1 mini Pro
> HARDWARE: ESP8266 80MHz, 80KB RAM, 16MB Flash
> PACKAGES: toolchain-xtensa 1.40802.0 (4.8.2), tool-esptool 1.413.0 
> (4.13), tool-mkspiffs 1.200.0 (2.0), tool-e
> sptoolpy 1.20600.0 (2.6.0), framework-arduinoespressif8266 2.20502.0 
> (2.5.2)
>
>
> Tady to funguje:
>
> PLATFORM: Espressif 8266 2.0.4 > WeMos D1 mini Pro
> HARDWARE: ESP8266 80MHz, 80KB RAM, 16MB Flash
> PACKAGES: toolchain-xtensa 1.40802.0 (4.8.2), tool-esptool 1.413.0 
> (4.13), tool-mkspiffs 1.200.0 (2.0), tool-e
> spotapy 1.1.3, framework-arduinoespressif8266 2.20500.190223 (2.5.0)
>
> Uvedené je vykopírované z Atom/PlatformIO - nejde to od verze PLATFORM 
> 2.1.1 a výše.
>
> Otázka je, změnilo se od té doby něco v tom jak se má EEPROM používat 
> ( a je chyba u mě) a nebo to prostě nechodí (a nikdo si toho tak 
> dlouho nevšiml)?
>
> testovací kod:
>
> EEPROM.begin(256);
>     randomSeed(analogRead(0));
>     delay(1000);
>     //nacteni hodnot z eeprom
>     Serial.println(" ");
>     Serial.println("Obsah eeprom adresy");
>     Serial.print(TEST);
>     Serial.print(" ");
>     Serial.println(EEPROM.read(TEST));
>     delay(500);
>     uint8_t test_hodnota=random(0, 255);
>     Serial.print("testovaci hodnota: ");
>     Serial.println(test_hodnota);
>     EEPROM.write(TEST, test_hodnota);
>     delay(500);
>     EEPROM.commit();
>     Serial.println("Druhy obsah eeprom adresy ");
>     Serial.print(TEST);
>     Serial.print(" ");
>     delay(500);
>     Serial.println(EEPROM.read(TEST));
>     delay(500);
>     EEPROM.end();
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list



Další informace o konferenci Hw-list