Forum: Compiler & IDEs AVaRICE mit Debugger (Dragon) in Eclipse verbinden


von Michael_K (Gast)


Angehängte Dateien:

Lesenswert?

Ich versuche gerade ein kleines Testprogramm zu debuggen.

Ich besitze einen AVR Dragon welchen ich mit einem AT90PWM316 verbinden 
will. Das ganze soll mit Hilfe des debugWires geschehen. Das 
entsprechende Fuse-Bit im PWM316 habe ich schon gesetzt.
Als Programmierumgebung benutzt ich die aktuelle Version von Eclipse.

Ich habe nun AVaRISE über die Konsole geöffnet. Folgende Parameter habe 
ich dabei übergeben:
avarice --debugwire --dragon --part at90pwm316 --jtag 
usb:00:a2:00:00:27:7f :4242
Der Dragon wird erkannt und sagt das er auf Port 4242 auf eine 
Verbindung wartet.
Zurück in Eclipse starte ich dann den Debugger avr-gdb mit den 
entsprechenden Einstellungen für mein Projekt und ebenfalls mit dem Port 
4242.
In der Konsole sehe ich nun, wie das Ding mit einem anderen Port, 
meistens so 20xx auf den AVaRise zugreifen will. Verändere ich in beiden 
Programmen die Ports, wohlgemerkt immer auf denselben Wert, so hat das 
keine Auswirkungen. Der Debugger scheint sich immer wahllos einen Port 
auszusuchen.
Da die Ports nicht übereinstimmen, wird die Verbindung geschlossen und 
ich stehe wieder am Anfang.

Hat irgend jemand ne Idee, wie ich dieses Problem beheben kann. Ich habe 
auch schon versucht den avr-gdb von der Konsole aus zu starten, leider 
mit demselben Ergebnis.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Michael_K schrieb:

> Der Dragon wird erkannt und sagt das er auf Port 4242 auf eine
> Verbindung wartet.

Das sieht in deinem Screenshot aber ganz anders aus.  Dort beklagt
er sich, das er das Device nicht ansprechen kann (reported debugWire
device ID: 0xFFFF).  Das sieht mir erstmal nach einem Hardwareproblem
aus und wirft die Frage auf, was du an deinem /RESET-Pin noch so dran
hast.

> In der Konsole sehe ich nun, wie das Ding mit einem anderen Port,
> meistens so 20xx auf den AVaRise zugreifen will.

Das ist der Clientport, von dem aus der Server die Verbindung erhält.
Dieser Port wird wahllos (bzw. nach einem betriebssysteminternen
Algorithmus) vom Betriebssystem vorgegeben.  Das ist völlig in
Ordnung so, dort hast du kein Problem.  Dein Problem muss woanders
sein, aber solange dir der Dragon keine vernünftige debugWIRE-
Verbindung aufbaut, geht's nicht weiter.  --part at90pwm316 brauchst
du normalerweise gar nicht, da das AVaRICE sich diese Angabe von
der Ziel-MCU selbst holen kann (daher steht dort auch "FORCED").

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
Noch kein Account? Hier anmelden.