Hallo zusammen, ich benutze einen ATmega644. Zur Programmierung verwende ich Atmel Studio 6.0.1882. Zum Debuggen verwende ich den JTAGICEmkII neueste Firmware. Das Programm ist in C geschrieben. Mir ist aufgefallen, dass sich nach ein- oder mehrmaligem Starten und Stoppen des Debug-Vorgangs der Inhalt meines EEPROMs geändert hat. Der Inhalt des EEPROMs ändert sich nicht beim Ein- und Ausschalten der Steuerung, nur beim Starten des Debuggings. Ein oder mehrere Bytes (Position willkürlich) weisen nach Starten des Debugvorgangs nicht mehr den original Zustand auf, obwohl der Code noch gar nicht angelaufen ist. Das Problem scheint unabhängig vom Code zu sein. Ich habe mehrere Programme getestet. Der Brown-Out Detector hat darauf auch keinen Einfluss. Das Problem existiert bei jeder Einstellung. Ich vermute, dass sich der Programmzeiger beim Starten des Debugvorgangs irgendwie selbständig macht?! Auch die Option "use external reset" hat darauf keinen Einfluss. Kennt dieses Problem noch jemand? Oder kann mir jemand sagen, woran das liegen könnte und was ich eventuell falsch mache? Vielen Dank an alle
Danke für die Hilfe Martin. Ich hab das EESAVE fuse gesetzt, habe aber das Problem immernoch. Hast du noch eine Idee, woran es liegen könnte?
Das Problem existiert natürlich nur, wenn "Preserve EEPROM" aktiviert ist. Sonst wird das EEPROM ohnehin jedes mal beim Starten des Debuggings neu beschrieben. Genau das will ich aber nicht. Weiß noch jemand Rat? Vielen Dank
Dann kann ich nix weiter zu sagen, mach normalerweise UART debugging über die Konsole :X
Hat sonst keiner dieses Problem??? Es muss doch noch irgendjemand mit dem Atmelstudio 6.0 und dem JTAGICE mkII arbeiten (eve. auch mit dem ATmega644), und ein Programm haben, das schreibenderweise auf das EEPROM zugreift. Ich hab diesen Fehler auch lange nicht entdeckt, weil nicht immer der gleiche Speicherbereich des EEPROM überschrieben wird. Erst nach mehrmaligem Starten des Debug-Vorgangs werden nach und nach mehr und mehr Zellen geändert. Ich habe das rausgefunden, indem ich den Debug-Vorgang nur kurz gestartet habe und gleich wieder abgebrochen habe. Dann habe ich den EEPROM-Inhalt vor und nach dem Debug-Start verglichen. Woran könnte das noch liegen oder hat jemand das gleiche Problem? Vielen Dank
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.