Gast
#412218
Hallo, Ich bin auf der Suche nach einer eleganten Debug-Möglichkeit mit AVR-Studio. Ich habe mehrere Dateien in meinem Projekt (main.c, lcd.c, uart.c usw.). Wenn ich jetzt das .elf-extrakt in AVR-Studio lade und debugge, bleibt der Debugger immer an verschiedenen Stellen hängen. Zum Beispiel dann, wenn er ein Busy-Flag aus dem LCD auslesen will, was es ja im Software-Debugger nicht gibt. Damit ich trotzdem debuggen kann, wollte ich jetzt mittels Compilerschaltern diese kritischen Stellen wie folgt umgehen: In meiner Datei main.c schreibe ich "#define SW_DEBUG" und direkt am Anfang der vermeintlichen Funktionen (wo der Debugger hängenbleiben würde) schreibe ich: #ifdef SW_DEBUG return; #endif Leider funktioniert das nicht. Habe ich da was nicht richtig verstanden? Der AVR-Studio-Debugger springt trotzdem in die so modifizierten Funktionen, obwohl ich den Compilerschalter gesetzt habe. Hat von Euch vielleicht einer eine Idee was ich falsch mache? Oder hat jemand eine andere Idee, wie man seine Software simulieren kann, auch wenn auf bestimmte Ereignisse von Außen gewartet wird. Eine Möglichkeit wäre sicherlich die entsprechenden Portpins des Simulators per Hand zu setzen, aber das ist mir zu aufwändig, da manchmal hunderte Male auf Busy Flags und anderes gewartet wird. Im vorraus besten Dank, Oliver