Forum: Mikrocontroller und Digitale Elektronik Kanda JTag Ice Firmware Update


von Dominik W. (Gast)


Lesenswert?

Tag zusammen

Ich habe ein altes Kanda JTAG Ice (mit RS232 Schnittstelle) von einen 
Kumpel bekommen. Ich möchte damit einen ATMEGA64 debuggen. Die 
Kommunikation klappt prima, nur crasht das Programm immer nach der 
ersten Init-Funktion, da werden nur DDR und PORT gesetzt.

Mit crashen meine ich das JTAG auf Running geht und kein Breakpoint mehr 
erreicht egal wo er gesetzt ist (auch wenn ich in einzelnen Schritten 
debugge). Interrupts sind auch noch deaktiviert.

Etwas Sorgen macht mir: Er meldet mir immer das meine Firmware veraltet 
ist, könnte es daran liegen? Das updaten ist leider nicht so einfach 
AVRProg erkennt das Board nicht.

Kann mir jemand Tipps geben, ich benötige doch eine .hex wenn ich den 
JTAG per ISP flashen will?

Danke für jede Hilfe.

Freundliche Grüsse

von Dominik Wüst (Gast)


Lesenswert?

Unglaublich wieviele Foren und Tutorials ich schon zu diesem Thema 
gelesen habe und keines bringt mich weiter. Wenn es so weiter geht kaufe 
ich bald einen neuen JTAG.

von Marius W. (mw1987)


Lesenswert?

Gib mal deinen Quelltext, den du debuggen wollst, und auch die 
Compiler-Einstellungen (besonders Optimierung und 
Debug-Informationen)... Vielleicht funktioniert der Breakpoint wegen 
Compiler-Optimierungen nicht richtig, weil der Debugger die 
entsprechende Codezeile im Maschinencode nicht mehr zuordnen kann.

Ansonsten empfehle ich dir vernünftige Debug-Hardware. Mit einem Dragon 
oder dem JTAGICE mkII machst du nix verkehrt und hast immer Support 
durch Atmel direkt.

MfG
Marius

von Spess53 (Gast)


Lesenswert?

Hi

Welchen hast du denn? Bei kanda.com gibt es unter FAQs Hinweise für 
Updates.

MfG Spess

von Dominik Wüst (Gast)


Lesenswert?

Ist so ein Development Paket von Kanda, hat schon ein paar Jahre auf dem 
Buckel.

"Kanda STK200 with JTAGAVR ICE"

Ich spiel mal mit den Compiler Optimierungen

von Dominik Wüst (Gast)


Lesenswert?

Fehler liegt wohl woanders, eventuell am atmega64 selber.

Ich habe ein paar einfache C Programme geschrieben um die Funktion zu 
testen, wenn ich nur in der main() programmiere kann ich debuggen und es 
funktioniert alles, sobald ich irgend eine Funktion aufrufe zb. 
init_timer() wird diese ausgeführt, crasht aber nachher, er kommt nicht 
mehr ins main zurück.

Schonmal jemand so einen Fehler gehabt? Liegt nicht am JTAG. Er hängt 
auch wenn ich nicht debugge.

Arrr :/

von holger (Gast)


Lesenswert?

>Fehler liegt wohl woanders, eventuell am atmega64 selber.

Schalte die M103C Fuse ab.

von Dominik Wüst (Gast)


Lesenswert?

Also, Fehler ist behoben, JTAG funktioniert (auch wenn anscheinend nicht 
die aktuellste Version)

Sogar noch den ATMEGA64 ersetzt und auf der Platine nach Fehler gesucht, 
alles ohne Erfolg.

Der Grund wieso er von den Funktionen nicht zurück findet ist, wie man 
vielleicht erahnen kann, der Stackpointer. Die Lösung ist im AVR Studio 
in den Projekt Configurationen unter Memory Settings einfach den Haken 
bei Specify Initial Stack Adress setzen.

Unglaublich wie man bei so Kleinigkeiten Zeit verbraten kann.

Schönen Abend euch allen.

Freundliche Grüsse

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.