Forum: Mikrocontroller und Digitale Elektronik Hilfe! AT91SAM7X via JTAG direkt Programmieren


von Wladimir S. (wlad)


Lesenswert?

Ich habe folgendes Problem. Ich will den AT91SAMX512 direkt per JTAG und 
ICEBreaker programmieren.
Ich habe die Scan Chain 2 (ICEBreaker) aktiviert und kann die 
ICEBreaker-Registers beschreiben und auslesen.
Zum Beispiel, ich schreibe zwei verschiedene Werte in 
Watchpoint_0_und_1_Address_Registers (0x08 und 0x10) und kann diese 
Werte korrekt auslesen.
Allerdings, wenn ich den 'Debug Comms Data Register'-Register (0x05) mit 
einer Kommando beschreibe, bleibt der 'Debug Comms Control'-Register 
(0x04) für immer 0x100000001, so dass es scheint für mich, dass der 
ICEBreaker gar nichts aktiv ist, und holt das Kommando nicht ab.
Gibt es, was ich noch zusätzlich aktivieren soll, damit es funktioniert?

von Martin (Gast)


Lesenswert?

Hallo.

Mögliche Ursache: Der JTAG Run-Test/Idle state.

Bei der JTAG-Variante von FFPI scheint es sich - wie bei SAM-BA um Code 
in einem ROM zu handeln.

Der Run-Test/Idle state hat bei ARM7TDMI eine besondere Bedeutung 
(Leider fehlt dieser Hinweis im SAM7-Manual):

Beim Warten auf den (laufenden) Chip muss man in diesem Zustand warten. 
Ansonsten wird die CPU eventuell gestoppt!

Bei anderen Aktionen (z.B. bei gestopptem Prozessor) darf dieser Zustand 
nicht durchlaufen werden.

Ich hoffe, dass das hilft.

Martin

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.