AVR JTAG Programmierung

Gast #1125016
Lesenswert?
• ▲
▼
Hallo Zusammen,

ich bin auf der Suche nach einer Beschreibung um die großen Atmegas über
JTag zu beschreiben. Es geht nicht um „man nehme einen mega16“ und 
Studio schaufelt die Software in das Ding rein, sondern um die reine 
Programmierung über das JTag-Interface.

Ich hab’ mal einen m168 als Ziel vorgesehen. Dies ist aber völlig egal. 
In den Zeilen 21-31 kann man die UART anpassen.

Über den COM-Port meldet sich dann der Mega als JTagICE am Studio 
betriebsbereit.

Jetzt mein Problem: Ich habe keine Ahnung, wie ich den ATmega(Ziel) per 
JTag ansprechen kann. Nochmal: NICHT per ISP sondern per JTag!

Kann mir da jemand helfen?

(in Main -> Read Signature -> gebe ich mal den Atmega32 zurück)
Angehängte Dateien:
Gast #1125034
Lesenswert?
• ▲
▼
Ja, Ja habe ich schon. Es geht nicht um das Prinzip, sondern wie 
mache(im Sinne von wirklich TUN) ich es.

Ich kann auch meiner Software sagen: „siehe du hast einen ATMEGA32 vor 
dir“ und sie wird alles an das AVR-Studio weitergeben (AVR060).

Aber über den JTAG-Teil schweigen sich alle aus. Also – Wie lese ich 
z.B. lFuse über JTAG aus?

Oder andere Frage: WIE LÖSCHE ICH ÜBER JTAG das ganze Device?
Gast #1125039
Lesenswert?
• ▲
▼
Hi adele,

schönes Thema...

Als JTAG-Library kann ich dir die XSVF-Sourcen von Xilinx empfehlen 
(einfach die Shift-Kommandos extrahieren).

Schau mal ins DB der Derivate, die ein JTAG-Interface haben. Dort wird 
beschrieben, welche Bits du beispielsweise zum Programmieren über die 
Kette schieben musst.
Ein weiterer Ansatz-Punkt ist vielleicht AVR2SVF (ein Atmel-Tool um aus 
HEX-Files SVF-Files zu erstellen). Die SVF-Ergebnisse sollten sich ja 
mit den DB-Infos decken.

Eine ausführliche Bechreibung des Interfaces (vor allem zum Debuggen) 
ist nicht so einfach zu finden ;-(

Gruß Andreas
Gast #1126132
Lesenswert?
• ▲
▼
Hallo Peter

Ich habe schon vor einiger Zeit mal in die Quelle geschaut und mich 
schon damals gefragt, wie die Befehle aus dem AVR060-Datenblatt in die 
15 Teile in der Quelle übersetzt werden.
Also ich werde daraus nicht so richtig schlau.

Mein Problem ist nach wie vor, wie schreibe oder lese ich einen 
Speicherbereich aus oder in den AVR per JTAG. Funktioniert das (im 
Prinzip) wie bei ISP?
Wozu braucht man die Device Descriptoren aus dem AVR060 – was steht in 
den Dingern drin oder sind die Dinger vielleicht zur 
Grundinitialisierung nach einem ERASE zu gebrauchen?

Es wäre schön, wenn ich ein paar Antworten bekommen würde
Danke Adele

Ich habe mein „Progrämmchen“ mal ein bisschen ausgedehnt. Einfach an den 
AVR eine serielle Schnittstelle dran, den Seriel-Monitor angeworfen  und 
aus dem Studio mal den JTAGICE als Brenner oder Debugger gewählt – Man 
kommt damit schon ziemlich weit. Nur eben es fehlt das Schreiben und 
Lesen des Speichers.
Angehängte Dateien:

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.