Der AVR-Simulator meldet: AVR Simulator: Stack Underflow at 0x0145 was kann das bedeuten?
Dass Du irgendwas gepopt hast, ohne vorher was zu pushen... Wenn Du in C programmierst, kann ich mir das allerdings nicht ganz vorstellen, weil Du da (außer durch Manipulation des Stack Pointers, und von dem sollte man tunlichst die Finger lassen) keinen direkten Zugriff auf den Stack hast.
Genau den Fall hatte ich letztens auch. Scheint ein Problem von AVRSTudio zu sein (mein Code kann es gar nicht gewesen sein, der ist natürlich immer fehlerfrei :-) weiteres findet sich hier: http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&p=267185 Oliver
Ja, ich verwende AVR Studio 4.12 Service Pack 4 Build 498. Mit GCC also C, was sich dann auch um den Stack kümmern sollte. Der Fehler tritt schon bei einfachsten FOR-Schleifen auf! Kann man diese Fehlermeldung einfach ignorieren?
> Kann man diese Fehlermeldung einfach ignorieren? Es gibt einen Stack Underflow Bug im AVR Simulator. Atmel weiss von diesem Bug und will ihn im nächsten Release beheben. Ob du exakt diesen Bug wiedergefunden hast, weiss ich nicht. Das Originalposting bezieht sich auf Code mit Funktionspointern bzw. die Simulation des Befehls ICALL. http://2313.avrfreaks.net/index.php?name=PNphpBB2&file=printview&t=42557&start=0 http://2313.avrfreaks.net/index.php?name=PNphpBB2&file=printview&t=40299&start=0&POSTNUKESID= http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=43557 http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=43557 Schau dir das Disassemblat an und wenn ein ICALL sichtbar ist, kannst du die Meldung wahrscheinlich guten Gewissens ignorieren.
Ja, ich verwende Funktionspointer, scheint also der beschriebene Bug zu sein. Vielen Dank für die Antworten.
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.