INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
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 !!!"
^
Executable segment sizes:
IROM : 304336 - code in flash (default or ICACHE_FLASH_ATTR)
IRAM : 31008 / 32768 - code in IRAM (ICACHE_RAM_ATTR, ISRs...)
DATA : 1448 ) - initialized variables (global, static) in RAM/HEAP
RODATA : 4228 ) / 81920 - constants (global, static) in RAM/HEAP
BSS : 28032 ) - zeroed variables (global, static) in RAM/HEAP
Der Sketch verwendet 341020 Bytes (32%) des Programmspeicherplatzes. Das Maximum sind 1044464 Bytes.
Globale Variablen verwenden 33708 Bytes (41%) des dynamischen Speichers, 48212 Bytes für lokale Variablen verbleiben. Das Maximum sind 81920 Bytes.

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. Wink

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 Sad

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 Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
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)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
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. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
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)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
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. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
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)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
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?
Für genauere Hinweise sollten wir den Sketch kennen.

Gruß Tommy

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 Dodgy

Problem, wie kann ich den Posten, da einige TAB's und relativ lang Angel

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 Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
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)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Abgespeckter Sketch für ESP8266 -WLAN Anbindung / Anfänger mizieg 7 165 Heute 17:45
Letzter Beitrag: N1d45
  NodeMCU -KNX ak68 16 2.557 24.02.2021 17:06
Letzter Beitrag: matty67
  ESP8266-12E & Pullup I2C rev.antun 17 464 24.02.2021 12:50
Letzter Beitrag: N1d45
  ESP8266 OTA und Verwendung von TXD0/RXD0 rev.antun 27 648 22.02.2021 19:43
Letzter Beitrag: hotsystems
  GPS-Synchronisierung mit NodeMCU-ESP8266 Floke4 3 153 22.02.2021 19:33
Letzter Beitrag: rev.antun
  NodeMCU: zyklisch WDT reset miq19 1 107 21.02.2021 16:30
Letzter Beitrag: miq19
  esp8266 zu html gk_1 9 302 19.02.2021 19:41
Letzter Beitrag: Tommy56
  ESP8266 SD CSV Datei Zeilen rückwärtz RobertHQ 7 344 14.02.2021 19:29
Letzter Beitrag: Corvus
  ESP8266 Webserver nach Zeit nicht mehr verfügbar. ESPWolf 21 1.800 02.02.2021 17:54
Letzter Beitrag: Tommy56
  ESP8266 - DLNA, Chromecast, Firestick & YouTube rev.antun 8 698 27.01.2021 21:31
Letzter Beitrag: nbk83

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste