ESP32 Preferences – Daten in den Flash-Speicher schreiben und lesen



Einführung

Der ESP32 kann einen Teil sei­nes Flash-Spei­chers für die per­ma­nen­te Spei­che­rung von Daten ver­wen­den. Die gespei­cher­ten Daten blei­ben auch nach der Tren­nung von der Strom­zu­fuhr oder nach einem Reset erhal­ten. Der NVS (Non-vola­ti­le sto­rage = nicht flüch­ti­ger Spei­cher) kann alle Typen von ⇒Varia­blen schrei­ben und lesen.

Ein per­ma­nen­ter Spei­cher ist hilf­reich um die Daten des hei­mi­schen WLANs dau­er­haft abzu­spei­chern, oft ver­wen­de­te Varia­blen ver­füg­bar zu machen oder den letz­ten Zustand einer Hard­ware­kom­po­nen­te zu mer­ken.

Die Biblio­thek erwar­tet die Defi­ni­ti­on eines Namens­rau­mes. Die­ser kann für ver­schie­de­ne Zwe­cke unter­schied­lich sein. put spei­chert einen Schlüs­sel und den dazu­ge­hö­ri­gen Wert, get liest bei­des aus dem Spei­cher. Bei jeder put- und get-Ope­ra­ti­on muss die­ses Schlüs­sel-Wert-Paar ange­ge­ben wer­den.

Funktionen der Bibliothek Preferences

Schlüs­sel­wortPara­me­terAkti­on
begin(Namensraum, rea­don­ly);rea­don­ly = true -> nur lesen
rea­don­ly = fal­se -> lesen und schrei­ben
Pre­fe­ren­ces star­ten
end();aktu­el­len Namens­raum schlie­ßen
clear();
alle Schlüs­sel-Wert-Paa­re des aktu­el­len Namens­raums löschen
remove(Schlüssel);ein Schlüs­sel-Wert-Paar löschen
putInt(Schlüssel, Wert) ;
putUInt(Schlüssel, Wert);

Varia­blen vom Typ int und unsi­gned int schrei­ben
putBool(Schlüssel, Wert);Varia­ble vom Typ bool schrei­ben
putString(Schlüssel, Zei­chen­ket­te);Varia­ble vom Typ String schrei­ben
getInt(Schlüssel, Wert) ;
getUInt(Schlüssel, Wert);
Varia­blen vom Typ int und unsi­gned int lesen
getFloat(Schlüssel, Wert) ;
getDouble(Schlüssel, Wert);
Varia­blen vom Typ float und dou­ble lesen
getBool(Schlüssel, Wert);Varia­ble vom Typ bool lesen
getString(Schlüssel, Zei­chen­ket­te);Varia­ble vom Typ String lesen

Konfiguration der Mikrocontroller

Variable speichern und lesen

Das Pro­gramm legt ver­schie­de­ne Varia­ble (int, bool und String) an und schreibt sie in den Spei­cher. Die int-Varia­ble wird jeweils um 1 erhöht, die bool­sche-Varia­ble ver­än­dert jeweils ihren Zustand von true zu fal­se und der String wird wech­sel­wei­se in Groß­buch­sta­ben und in Klein­buch­sta­ben dar­ge­stellt.

WLAN-Einstellungen speichern

Auch die WLAN-Ein­stel­lun­gen kön­nen im Spei­cher abge­legt wer­den, damit wird die Anga­be der Daten im Kopf des Pro­gramms über­flüs­sig. Zunächst müs­sen die Daten geschrie­ben wer­den. Das Pro­gramm muss nur ein­mal hoch­ge­la­den wer­den.

Daten schreiben

Daten lesen und WiFi-Verbindung aufbauen


Quelle


Letz­te Aktua­li­sie­rung: Feb. 5, 2026 @ 19:29

Inhalt