Atmel Studio 4 compilieren ja debuggen nein?

#2866351
Lesenswert?

Beim Simulieren läuft das Programm im PC ab, nicht im Kontroller selbst. 
Es wird zwar die Syntax nachgebildet, nicht aber der Vorgang im 
Kontroller. Simulieren kann man das Programm , ohne einen Kontroller da 
zu haben.

Beim debuggen läuft das Programm im Kontroller ab, an vorgegebenen 
Stellen wird er angehalten und der Inhalt von Speicherplätzen usw. kann 
geprüft werden.

debuggen erfordert, dass der PC (Studio4) den Kontroller jederzeit lesen 
kann. Und dass Haltepunkte im Programm gesetzt werden können.

Das geht nur mit dazu geeigneten Programmiergeräten. Mit STK500 gehts 
zum Beispiel nicht.

Wenns in Studio ausgegraut ist, gehts im speziellen Fall nicht. entweder 
weil der Kontroller das nicht kann oder das Programmiergerät. (Das 
müsste debug-wire oder JTAG können.)
Gast #2866400
Lesenswert?

Ich hab bei Debugging / Platform&Device eingestellt:
AVR Simulator
Atmega168

dann auf Finish geklickt. Trotzdem lässt sich der Debugger nicht starten 
bzw kann ich im entsprechenden DropDown Menü nur Breakpoints setzten und 
eben die Platform auswählen.
µC bzw Programmiergerät hab ich keines angeschlossen.
#2866446
Lesenswert?

Ja eben, Simulation findet im PC statt, nicht im Kontroller.
Erst wenn ein geeignetes Programmiergerät bei Studio angemeldet ist und 
auch der geeignete Kontroller angeschlossen kann man debuggen, nämlich 
das Programm bis zu einem bestimmten Zeitpunkt auf dem Kontroller 
ablaufen lassen und dann die Register usw. ansehen.

Mir dem Simulieren kann man bestimmte Algorithmen gut überprüfen, ob 
z.B. ein Addition oder Division mit BCD-Zahlen klappt, die 
zeitunabhängig sind.

Das debuggen kann auch Zeitabläufe einbeziehen, ob z.B. nach einem 
Tastendruck ausgelöste Abläufe in der richtigen Geschwindigkeit ablaufen 
oder Reaktionen auf Interrupts rechtzeitig erfolgen.
#2866474
Lesenswert?

Conny schrieb:
> Ich hab bei Debugging / Platform&Device eingestellt:
> AVR Simulator
> Atmega168
>
> dann auf Finish geklickt. Trotzdem lässt sich der Debugger nicht starten
> bzw kann ich im entsprechenden DropDown Menü nur Breakpoints setzten und
> eben die Platform auswählen.
> µC bzw Programmiergerät hab ich keines angeschlossen.

sollte ja so funktionieren, ausser der Compiler hat keine hex-Datei 
erzeugt, dann geht es nicht.
Am besten nochmal ein "Rebuild All" machen und schauen ob dieser 
fehlerfrei durchläuft.
Gast #2866553
Lesenswert?

Peter R. schrieb:
> Ja eben, Simulation findet im PC statt, nicht im Kontroller.

Auch wenn die Simulation im PC abläuft, hindert einen doch keiner daran, 
dass Programm im Simulator zu Debuggen. Auch dort lassen sich Break 
Points setzen, Abläufe im Single-Step ansehen, Registerinhalte prüfen, 
Reaktionen auf Stimuli ansehen und Laufzeiten über die Stopuhr messen.
#2866681
Lesenswert?

Weiß jemand zufällig wie das debuggen im Atmel Studio 6 funktioniert?

Habe vor einigen Jahren einiges mit dem 4rer gemacht und dort hatte ich 
auf der rechten Seite immer einen Spalte wo ich alle Register und alle 
Informationen des gewählten Controllers hatte. Ich konnte das Programm 
virtuell durchlaufen lassen und hab genau gesehen was er theoretisch 
macht.

Nun im Studio 6 vermisse ich diese Funktion vollkommen. Ist sie irgendwo 
versteckt?

Wenn ich auf Compile&Debug (Symbol sieht etwa so aus: |> ) klicke, 
compiliert er das Programm und Schreibt es direkt über meinen AVRispMKII 
Dongle in den Controller.

Gibt es diese offline Simulation gar nicht mehr? Fand ich extrem 
praktisch...

Gruß

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren