Hallo Gemeinde! Ich versuche verzweifelt mit einem Keil uLink2 per JTAG einen Atmel AT91SAM7 zu flashen/debuggen. Anbei eine Skizze davon wie ich den ARM-20-Pin-Connector mit den JTAG-Pinnen des uC verschaltet hab (Pinnummern des TQFP-100 in Klammern). Der Jumper im uLink steht auf "ARM" (d.h. JTAG wird vom Target gespeist). Wahlweise sehe ich in Keil uVision entweder garkein Target oder bekomme einen "JTAG Communication Failure" - hat jemand einen Hinweis, was an meiner Belegung nicht passt oder was ich sonst evtl nicht beachtet habe? Danke und Gruß Tom
:
Bearbeitet durch User
Eine mögliche Ursache (unabhängig von der Verschaltung): Der AT91SAM7 läuft (z.B. Quartz schwingt) und auf den Chip wurde schon mal per JTAG zugegriffen? Hintergrund der Frage: ich hatte es schon mal mit AT91SAM7 "frisch von der Rolle" zu tun die hatten scheinbar ab Werk Code im Flash der den Chip angehalten hat ("Quartz schwingt nicht mehr"). JTAG ging dann auch nicht und erst ein "ERASE" per entsprechenden Pin hat das Problem gelöst.
Schau Dir mal hier https://www.olimex.com/Products/ARM/Atmel/_resources/SAM7-Pxxx.pdf im Schaltplan auf Seite 9 an, wie der JTAG-Stecker angeschlossen ist. Da gibts auch einen Haufen Widerstände, die da sicher nicht zum Spaß sind. fchk
Frank K. schrieb: > die da sicher nicht zum Spaß sind. Zum Spass nicht, aber für den Betrieb mit dem JTAG Interface sicherlich nicht von Belang. Null-Ohm Längswiderstände helfen nichts, und die 47K Pullups sind nur dafür da dass die JTAG- Pins am Prozessor nicht floaten.
Danke erstmal an alle für die Rückmeldungen! Inzwischen ist es mir gelungen, aus der IDE heraus aufs Target zu kommen. Mein Fehler war hauptsächlich, dass ich die Orientierung bei dem 20-Pin-Connector falsch interpretiert hatte. Zudem muss der TST-Pin (Pin 58 am uC) offenbar nicht (wie in meiner obigen Skizze eingezeichnet) auf High-Pegel liegen. Eine aktualisierte Skizze habe ich angehangen... Dieter schrieb: > Eine mögliche Ursache (unabhängig von der Verschaltung): Der AT91SAM7 > läuft > (z.B. Quartz schwingt) und auf den Chip wurde schon mal per JTAG > zugegriffen? -> In der Tat wurde schonmal "per JTAG auf den Chip zugegriffen": in der Fertigung wird per JTAG ein Bootloader auf den uC geflasht. Für den anschließenden Zugriff per JTAG aus der IDE (Keil uVision) heraus scheint das kein Problem darzustellen - allerdings scheitere ich nun daran, per SEGGER J-Link und J-Flash ein FW-Image auf den uC zu laden. Evtl. hilft hier dein Hinweis zu dem ERASE-Pin weiter. Hast du den damals auch mit an das JTAG-Interface angebunden oder was genau hast du mit dem getan? Danke und Gruß Tom
Tom W. schrieb: > allerdings scheitere ich nun > daran, per SEGGER J-Link und J-Flash ein FW-Image auf den uC zu laden. > Evtl. hilft hier dein Hinweis zu dem ERASE-Pin weiter. Der ERASE Pin löscht aber auch deinen Bootloader wieder. Aus µVision heraus flasche ich mit dem ULINK nur den Bereich der Firmware, der Bootloader und meine Config Section bleiben davon unberührt. Ich gehe davon aus, dass man mit dem JLink ähnliches machen kann (nur einen Bereich flashen). Falls dein Bootloader aber - wie in meinem Fall - den JTAG vom Chip sperrt, kommst du um den ERASE nicht herum.
:
Bearbeitet durch User
Tom W. schrieb: > > Evtl. hilft hier dein Hinweis zu dem ERASE-Pin weiter. Hast du den > damals auch mit an das JTAG-Interface angebunden oder was genau hast du > mit dem getan? Der ERASE-Pin ist eigentlich nur für Notfälle. Wenn man den wirklich in der Produktion benutzen möchte würde ich das getrennt von JTAG machen, mit JTAG hat er ja nichts zu tun.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.