Hallo. Ich hab ein relativ groses programm mit WINAVR für einem ATMega16 geschrieben. Jetzt werden plötzlich aus Variablen verändert, ohne das die funktion dafür ausgeführt wird. Kann es sein, das WINAVR Variablen überschneiden lässt (evtl schreib ich auch über das ende eines Buffers .). Anders kann ich es mir nicht erklähren. Hab da einen verdacht, welche variable es sein könnte. kann ich irgendwie feststellen, wo sich eine globale variable im SRAM befindet / befinden wird. Gibt es da eine möglichkeit, damit der GCC das ausspuckt ? Gruß, Frank
kenn mich mit avr nicht gut aus also nur mal so ein verdacht: wie sieht es mit deinem stack aus? vielleicht ist dieser zu klein bzw. überhaupt nicht vorhanden.
An Stack overslow hab ich auch zuerst gedacht. Es lag aber an tatsächlich an einem buffer, der über das ende hinaus beschrieben wurde. und die Passende stelle im code hab ich nach 2 Std gefunden. Eine liste der Variablen funktionen hätte mir einige zeit erspart.
Was für eine Liste suchst du genau? Vielleicht hilft dir ja die Symboltabelle?
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.