Hallo zusammen,
ich habe ein Controllerboard entwickelt (Mega325A) das ich über die JTAG
Schnittstelle proggen/debuggen will. Dazu benutze ich den AVR-Dragen.
Bevor ich zum Problem komme, will ich noch anmerken, dass ich bereits
ein fast baugleiches board habe, mit dem es sich problemlos über JTAG
programmieren und Debuggen lässt. Der einzige unterschied bei dem neuen
Board ist, dass die JTAG-Leitungen nichtmehr über einen stecker, sondern
über direkt verlötet Kabel rausgeht.
Nun aber zum Problem:
Wenn ich bei meinem neuen board (in Atmel Studio 6) über JTAG connecten
will, kommt eine Fehlermeldung (unable to enter programming mode). Dann
ging erstmal die standard-fehlersuche los:
-Spannungsversorgung (5V) überall angeschlossen und verfügbar (wird auch
im "Device Programming" erkannt)
-Suche nach Kurzschlüssen -> nichts gefunden
- Prüfung ob die JTag Pins richtigen kontakt haben und richtige
verdrahtung-> alles korrekt
->JTAG Clock verändert -> hat nix gebracht
-AVR Dragon auf defekt geprüft -> Läuft wie am schnürchen
Meine erste Befürchtung war nun, dass der Controller beim löten oder
schon vorher Schaden genommen hat, deshalb hab ich mal mit einem
Multimeter beim connecten die Pegel der JTAG-Schnittstelle gemessen um
zu sehn, ob da überhaupt was rauskommt. Und dann ist etwas erstaunliches
passiert:
Wenn ich mit dem Multimeter die Spannung zwischen TCK(Pin1) und
GND(Pin10) messe, läuft das ding problemlos (aber auch nur dann).
Daraufhin hab ich erstmal den Quarz (20Mhz) eingeschaltet, mit der
Hoffnung,dasses wohl irgendwo am clock liegen muss. Allerdings hat das
nichts gebracht.
Um weiter zu Prüfen ob der Controller doch nen Schaden hat, hab ich ein
paar Programme getestet, die wie gewünscht funktioniert haben.
Hat jemand von euch eine Idee wo das Problem liegen könnte? Man kann auf
jeden Fall schonmal die TCK Verbindung einkreisen.Bloß kann ich mir
nicht erklären welchen einfluss das Multimeter hat (PullDown?) und warum
es gerade dann funktioniert...
Danke fürs fleißige Lesen ;)
Nachtrag:
Ich hab nach längerem suchen einen ähnlichen Fehlerfall gefunden.
Scheinbar liegt das Problem an der Leitungslänge bzw. Impendanz der TCK
Leitung.
Beitrag "AVR Dragon - JTAG - Verbindungsproblem"