Variablen NodeMCU ESP8266-E Speicher Sparen
|
11.12.2020, 01:38
Beitrag #1
|
|||
|
|||
Variablen NodeMCU ESP8266-E Speicher Sparen
Grüß Euch!
Da es sich um die Programmierung eines ESP8266/Node handelt hab ich dieses Thema da gepostet. Grundsätzlich geht es um Einsparung von Speicherplatz/für Variablen (Global/Statisch Verfügbar), und ich noch einen Bedarf an Speicher haben werde und jetzt bereits folgende Info bekomme: Zitat: #pragma message "CONNECT NEXTION ON SERIAL !!!" Es geht mir einfach nur darum wo kann man noch kürzen, die Suchmaschine meines Vertrauens hat mir Informationen geliefert. Jedoch hab ich alle Variablen, egal ob Global/Statisch, auf den Speicherplatz beschränkt der erforderlich ist, und alles andere läuft nur über Funktionen, die eben den angeforderten Wert retour liefern. Ich benötige nur einfach ein paar Tipps - keine fertige Lösung. DANKE! Sollte ich unverständlich formuliert haben, bitte einfach Nachfragen. ![]() Sollte ich trotz allem an die 65/70% des Speicherbedarfes des dynamischen Speichers kommen, wird es da möglicherweise Probleme im Ablauf des Sketches kommen? Und nebenbei ist wieder der RAM (4MB) trotz der richtigen Einstellung im IDE wieder FALSCH -> "Maximum sind 1044464 Bytes" das Thema hatte ich schon mal, aber ich versteh es einfach nicht warum das regelmäßig aufpoppt ![]() Gruß aus Wiener Neustadt Toni ================================================================= Seit die Mathematiker über die Relativitätstheorie hergefallen sind, verstehe ich sie selbst nicht mehr. Wer Rechtschreibfehler findet darf sie behalten ![]() |
|||
11.12.2020, 10:54
Beitrag #2
|
|||
|
|||
RE: Variablen NodeMCU ESP8266-E Speicher Sparen
Als const deklarieren, was const ist.
Feste Texte mit dem F-Macro in den Flash auslagern. Soweit möglich lokale Variablen verwenden. Deine einstellbaren 4 MB sind Flash, da kommt es auf die SPIFFS/OTA-Auswahl an. Der RAM ist fix und kann deshalb nicht eingestellt werden. Speicher Map. Gruß Tommy "Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt) |
|||
11.12.2020, 11:16
Beitrag #3
|
|||
|
|||
RE: Variablen NodeMCU ESP8266-E Speicher Sparen
So wie ich es sehe (hab vor einiger Zeit mal getestet), ist Programmspeicher (im Flash) immer auf 1.044464 MByte festgelegt.
Egal was ich in FlashSize in der IDE einstelle. Oder irre ich da? Gruß Dieter I2C = weniger ist mehr: weniger Kabel, mehr Probleme. ![]() |
|||
11.12.2020, 11:50
Beitrag #4
|
|||
|
|||
RE: Variablen NodeMCU ESP8266-E Speicher Sparen
Da hast Du Recht, zumindest wenn man die Module mit genügend Flash betrachtet. Da ist der Programmspeicher immer 1.044464 Bytes.
Das hatte ich missverständlich ausgedrückt. Es wird eigentlich nur die Aufteilung des Rests in OTA/SPIFFS eingestellt. Gruß Tommy "Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt) |
|||
11.12.2020, 11:52
Beitrag #5
|
|||
|
|||
RE: Variablen NodeMCU ESP8266-E Speicher Sparen
Ok und danke.
Gruß Dieter I2C = weniger ist mehr: weniger Kabel, mehr Probleme. ![]() |
|||
11.12.2020, 16:59
Beitrag #6
|
|||
|
|||
RE: Variablen NodeMCU ESP8266-E Speicher Sparen
@Toni: Hat es Ersparnisse gebracht?
Für genauere Hinweise sollten wir den Sketch kennen. Gruß Tommy "Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt) |
|||
11.12.2020, 18:26
Beitrag #7
|
|||
|
|||
RE: Variablen NodeMCU ESP8266-E Speicher Sparen
(11.12.2020 16:59)Tommy56 schrieb: @Toni: Hat es Ersparnisse gebracht? Servus Tommy! Bin gerade am "Umbau" der erste Test hat gezeigt, dass sich die Speicherbelegung (wie erwartet) verschiebt. Den ProtoSketch kann ich gerne Posten, man bedenke jedoch, dass ich ein "Frischling" bin, und der eine Megabaustelle ist - mangels Erfahrung. Laufen tut er wie gewünscht ... Kritik gerne willkommen, wenn im positivem sinne ![]() Problem, wie kann ich den Posten, da einige TAB's und relativ lang ![]() Wegen dem 1MB freien Speicher des NodeMCU find ich auch sehr Seltsam, da beim Hochladen angezeigt wird das er 4MB hat? Gruß aus Wiener Neustadt Toni ================================================================= Seit die Mathematiker über die Relativitätstheorie hergefallen sind, verstehe ich sie selbst nicht mehr. Wer Rechtschreibfehler findet darf sie behalten ![]() |
|||
11.12.2020, 18:41
Beitrag #8
|
|||
|
|||
RE: Variablen NodeMCU ESP8266-E Speicher Sparen
Die 4 MB sind der gesamte Flash-Speicher. (Beim D1 mini pro sind es 16 MB - Auto-detected Flash size: 16MB) davon sind aber immer nur 1.044464 Bytes als Programmspeicher verfügbar.
RAM habe ich 81920 Bytes insgesamt verfügbar. Wieviele Tabs sind es denn? Bei bis zu 4 würde ich sagen, als einzelne Codeblöcke in Codetags, den Rest als Anhänge. Gruß Tommy "Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt) |
|||
|
|
Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste