Gast
#284815
Hallo, ich bin mir nicht ganz sicher ob das hier das richtige Unterforum ist. Ich beschreibe mal das Phänomen auf das ich gestoßen bin. Ich habe ein Projekt in C (winavr) angelegt und will dieses nun im AVR-Studio simulieren (Atmega88). Eine Zeile wie diese (data ist uint8_t):
1 | |
wird folgendermaßen im Disassembler angezeigt: +00000231: 914000C6 LDS R20,0x00C6 Load direct from data space Wenn ich nun mit F11 durch das Programm gehe und an dieser Stelle in der I/O-View das UDR0 Register verändere und dann den lds Befehl ausführen lasse, wird der Wert aus dem UDR0 nicht in r20 oder data kopiert. Das bedeutet, dass ich nicht vernünftig debuggen kann und im watch-Fenster immer die Werte manuell ändern muss. Ist das ein Simulator-Bug oder kommt der Simulator mit den erzeugten Code des avr-gcc nicht klar? Entschuldigt bitte, wenn es sich wirr anhört.