Hallo, ich habe folgende struct angelegt: typedef struct { float x,y; } LCD; LCD A,B,C,S,E; sporadisch stürzt mein Atmega128 dann ab. Wo habe ich einen Fehler gemacht?
ok, und wie kann ich jetzt vorgehen? Die struct wird nur angelegt und noch nirgendwo im Programm benutzt.
Michael wrote: > ok, und wie kann ich jetzt vorgehen? Das hängt davon ab, was du zum Debuggen zur Verfügung hast. Eine gängige Methode, die Stackbenutzung festzustellen ist, dass man ganz am Anfang (z. B. in der section .init3) den gesamten RAM mit einem konstanten Muster füllt. Später nimmt man dann den Debugger und sieht nach, wie weit dieses Muster durch den Stack (der vom Ende des RAMs nach unten wächst) überschrieben worden ist. > Die struct wird nur angelegt und noch nirgendwo im Programm benutzt. Trotzdem wird der Platz dafür ja angelegt, entweder statisch oder auf dem Stack (für lokale Variablen). Du wirst nicht umhin kommen, dir deine RAM-Benutzung mal genauer zu Gemüte zu führen.
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.