Zapis zmiennej float do eprom, preferences ESP32 Problem

Zibi
Posts: 615
Joined: Wed Jul 31, 2019 9:20 am
Location: Białogard

Post

Cześć
Próbuje zapisać zmienna którą sobie odbieram po serialu i po kanale czujnika dystansu wartość leci do Supli. Chcę zapisywać tą zmienną, żeby po resecie była zapamiętana, ale kiedy strzelam reset cały czas się zeruje.
Próbowałem eproma put, get i preferences i to samo. Bez Supli działa bez problemu a z Suplą lipton. Płytka ESP32.

--------- EDIT ------------

Temat opanowałem używając preferences.
User avatar
klew
Posts: 8356
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

Dodam tylko, że tutaj problem był taki, że suplowa klasa "eeprom" była ustawiona na domyślny zerowy offset, więc Supla pisała do eeprom na adresach zacyznając od 0 w górę.
Zmienne u Zibi'ego też były zapisywane na niskich adresach i jedno z drugim się nadpisywało.

Metoda przechowywania danych "Preferences" to "NVS storage" z ESP-IDF. Używa on innego obszaru na flashu i można zapisywać dane w postaci klucz-wartość. Dlatego zmiana na preferences tutaj pomogła. Alternatywnie można było ustawić inny offset w suplowej klasie eeprom, albo zapisywać zmienne bezpośrednio do eeprom na adresach nieużywanych przez Suplę.
Widzimy się na Supla Offline Party vol. 2 :!:

Return to “Arduino IDE”