Hallo Leute,
hab einen rieeesen Code auf nem Arduino Nano, der über 91 % und 88% verfügt.
Nun das komische:
Sobald ich Serial.begin aktiviere, stürzt der Code immer an der Selben stelle ab. Nehme ich Serial.begin raus, läuft er wie gewollt.
Ohne habe ich noch gute 86 % und 84%
Da läuft alles einwandfrei.
Kann mir dass jemand erklären woher dass kommen kann?
Den Code kann ich nicht posten, der hat über 2500 Zeilen.
Ich nutze außerdem die SPI Library und U8g2 Lib. Nicht dass da was zusammenhängt.
Viele Grüße
Wird vielleicht er so sein, dass du dir damit die ganze Serial Bibliothek ins Programm holst und da werden zwei 64 Byte Puffer angelegt. Und kannst halt nicht das gesamte RAM belegen, da da noch Platz für Stack, lokale Variablen, etc. sein muss
Hey,
kann ich da was machen ? Ausser Code optimieren, das haben wir schon gemacht, haben insgesamt 33 % gespart.
Ich würde gerne mit Serial einfache Zahlenwerte noch über RX/TX raushauen. Geht leider nicht, weil das Programm abflacht.
Wenn Du schon optimiert hast, dann größeren MC nehmen.
Gruß Tommy
Noch gleich was, Arduino.h
Was genau war das nochmal? Für was braucht man die?
Und noch etwas
habe einen char* TextArray[50] { "Text", "Text2", } also 49 Texte inclusive einen für \0;
Dieser verbraucht viel Globale Variablen. Kann man dass eleganter Lösen?
Weil kommentiere ich die hälfte von TextArray aus, läuft Serial.begin und der Code funkt.
Dabei geht auch der Globale Speicher von 86 auf 68 zurück.
Es kommt auch keine Kompatibilitätsproblem Meldung mehr.
Du sagst du hättest den Code optimiert, aber das offensichtlichste hast du scheinbar nicht getan:
The Arduino programming language Reference, organized into Functions, Variable and Constant, and Structure keywords.
Google nach
F-Makro Arduino
PROGMEM Arduino
wenn das nicht hilft
Den Code kann ich nicht posten, der hat über 2500 Zeilen.
zippen und als Anhang dazunehmen.
Voraussetzung: zu allen eingebundenen Libs kommentieren woher diese genau sind!
Ich kann mir nicht vorstellen, das diese Anweisung deinen Code zerstört.
HotSystems:
Ich kann mir nicht vorstellen, das diese Anweisung deinen Code zerstört.
er meint wohl, der uC läuft nicht wie geplant
ElEspanol:
er meint wohl, der uC läuft nicht wie geplant
Und warum schreibt er das nicht ?
Zumindest sollte er den Titel anpassen.
uwefed
October 11, 2019, 9:40pm
12
91, 88, 86 und 84% von Was?
Den Sketch kannst Du auch als File anhängen.
habe einen char* TextArray[50] { "Text", "Text2", } also 49 Texte inclusive einen für \0;
Verbraucht viel RAM.
combie
October 12, 2019, 10:37am
13
Franz_grundi:
Noch gleich was, Arduino.h
Was genau war das nochmal? Für was braucht man die?
Bei solchen Fragen, frage ich mich, "Warum schaut der da nicht eben selber rein?"
Also:
Schau rein, und du wirst sehen ob du darauf verzichten kannst/willst
Tommy56
October 12, 2019, 2:02pm
14
Fragen ist doch bequemer, als selbst was tun.
Gruß Tommy