Hi, wie kann ich rausbekommen was der größte Speicherfresser in meinem Programm ist? Gibt es da einen eleganten Weg? Auskommentieren und kompilieren ist ein ziemlich bescheidener Weg.... Danke
Ok, wie muss ich den Anwenden daamit das funktioniert. Muss ich das im Makefile eingeben ?!?!
z.B. avr-nm --size-sort -S meinkompilat.elf außerdem ist avr-nm --help Dein Freund ;-)
Markus P. schrieb: > Speicherfresser RAM, FLASH, EERPROM? RAM, EEPROM - Arrays, große Strukturen FLASH - kein Floating point Berechnungen, kein delay(var) sondern delay(const), ansonsten wirst du nicht so schnell es schaffen 8kB mit dem eigenen Code vollzukriegen. (-Os Option beim Compiler verwenden!) Gruß
Hallo Markus, wie sieht den dein Makefile und die optimierungs Optionen aus ? CFLAGS += ... _
>Bin grad bei 62kb und mein a644p kann nur 64kb
Wenn deine HEX Datei 62kB gross ist, dann hast du noch
gut 40kB Platz im ATMega;)
Hallo Markus, ja richtig, ich hatte nicht auf den Namen geschaut. Mehr ist dann auch nicht mit automatischen Optimierungen machbar. Evtl. spielt man mal mit dem avr gcc 4.7.
Uwe S. schrieb: > Evtl. spielt man mal mit dem avr gcc 4.7. Gegen suboptimalen Programmierstil oder Verschalterung ist der aber auch machtlos ;-)
> Mehr ist dann auch nicht mit automatischen Optimierungen machbar.
Aber wahrscheinlich mit manueller. Zeig doch mal den (vollständigen!)
Quellcode.
g457 schrieb: > vollständigen! Bist du sicher, dass du zigtausend Zeilen Code angucken möchtest? Eine Liste der Includes wäre auch aufschlussreich.
>Das ist das AVR NET IO mit Ulrich Radigs Software und Peter Danniger >SW.... Ach darum geht es. Ich tippe mal auf megagrosse Arrays in der Webpage.h. Debug Messages abschalten könnte noch ein bisschen was bringen.
> Bist du sicher, dass du zigtausend Zeilen Code angucken möchtest?
Bin ich sich dass ich das nicht will - hab ich auch nicht geschrieben.
Aber man kann dann mal selber compilieren und kucken wo die Brocken
herkommen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.