Zerschreibt F("param") den Flash?

Im ESP32 AsyncWebserver gibt es verschiedene Funktionen für request->arg("param").

const String& arg(const String& name) const; // get request argument value by name
const String& arg(const __FlashStringHelper * data) const; // get request argument value by F(name)

Mit request->arg(F("param")) wird der kompilierte Programmcode kleiner aber zerschreibt das auf Dauer den Flash Speicher?

aber zerschreibt das auf Dauer den Flash Speicher?

Wieso zerschreiben?
Warum sollte lesen irgendwas zerschreiben?

Ist doch kein FeRAM, sondern ein EEPROM.

Der Code ist so oder so immer im Flash. Mit dem PROGMEM werden Strings aber nicht ins RAM kopiert

Was meine Vorschreiber ausdrücken wollten: Nein, dein Flash wird nicht belastet, es geht nichts früher kaputt. Du kannst es beruhigt anwenden. Es ist estra dafür gemacht, angewendet zu werden um weniger RAM für const Texte zu verbrauchen.

Hab jetzt einige Konstanten mit PROGMEM verschoben. Siehe da, wieder 4KB mehr Speicher frei.
Jetzt kommen diese vermaledeiten Strings dran. Ich hab schon einen Großteil auf char Arrays umgestellt.
=>wieder mehr freier Speicher.

Aktuelle Messwerte und die Systemkonfiguration, die auch nach einem Reset erhalten bleiben sollen, habe im EEPROM gespeichert. Wenn es jetzt aber mal richtig knallt und der ESP durch einen Speicherfehler oder wdt neu startet, ist auch der EEPROM leer.
Also: Externen EEPROM 25LC320A-I/P besorgen und über I2C anschließen. Mal sehen, was dann mit den Daten passiert, wenn es wieder mal BOOM macht.

Paranoia ist selten ein guter Ratgeber.

Hi

Wenn Du Angst um die Daten hast - nimm ein FRAM - Das kannst Du beschreiben wie ein RAM und es behält die Daten wie ein EEPROM.
Laut Hersteller keine Abnutzung/kein Totschreiben - zumindest nicht mit den Geschwindigkeiten, Die Du erreichen kannst und der Zeit, Die Dir noch bleibt (auch als Jungspund).

Du kannst also die Daten 'so wie Diese anfallen' in den FRAM klatschen und nach dem nächsten BOOM einen neuen Arduino aus der Atombomben sicheren Verpackung gepult, den FRAM angeschlossen und schauen, was vor dem BOOM so angesagt war.

Der Tommy56 hatte dazu (aber wohl im Parallel-Universum) eine Klasse vorgestellt.

MfG

Ja habe ich. Hier nachzulesen. Bis zum Ende gehen, da kommt noch eine Korrektur.

Gruß Tommy