mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Frage zu Atmel JTAGICE mkII


Autor: Bastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wenn ich das richtig verstanden habe unterstützt das JTAGICE mkII neben 
JTAG auch ISP via SPI und debugging via Debug-wire.

Ist es mit dem JTAGICE mkII auch möglich Controller zu flashen (nicht 
debuggen) die kein JTAG oder Debugwire unterstützen z.B. Atmega8 ?


Gruß

Bastian

Autor: AntonWert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry "Rahul Der trollige" aber muss dir wiedersprechen.
Entweder hab ich hier eine Sonderanfertigung von Atmel oder das MKII 
kann das einfach.

@Bastian:

Im User Guide steht's auch:
Programming with JTAGICE mkII (Both JTAG and ISP mode)....

Gruß
Anton

Autor: Thilo M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ISP kann der sehr wohl! Die unterstützten Typen findest du hier:
http://www.atmel.com/dyn/products/tools_card.asp?t...

Autor: Bastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

erstmal vielen Dank für die Antworten.
Vielleicht habe ich mich etwas unklar ausgedrückt, was ich wissen wollte 
ist, ob Controller die kein JTAG oder Debugwire unterstützen konkret der 
Atmega8
via ISP unterstützt werden.

Jetzt hab ich folgendes gefunden:

Supported devices for ISP mode and oscillator calibration only:
AT90PWM2, AT90PWM3, ATmega168, ATmega48, ATmega88, ATtiny13,
ATtiny2313, ATtiny24, , ATtiny44, ATtiny84, ATtiny25, ATtiny45, 
ATtiny85,
ATtiny261, ATtiny461, ATtiny861, ATmega48P

Bedeutet das, dass ich für den Atmega8 dann das AVRISP mkII benötige
und JTAGICE mkII dafür nicht verwenden kann?



Gruß

Bastian

Autor: cguru (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ATmega8 hat ein ISP Interface und der mkII den passenden Deckel dazu. 
Dass muss eigentlich auf jeden Fall funktionieren.
Ich gehe mal davon aus, dass der mega8 (so wies scheint) nicht in der 
"Supportlist" enthalten ist, da er vom mega88 bereits "ersetzt" wurde.

Autor: Thomas Finke (thomas-hn) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also ich halt mich eigentlich an die Grundregel:

Das JTAGICE mkII kann alle Atmel-Controller flashen. Entweder über JTAG, 
ISP oder DebugWire. Das einzige was es NICHT kann ist HV-Programmierung.

Gruß,

Thomas

Autor: Chris M. (norgac)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

Thomas Finke wrote:
> Das JTAGICE mkII kann alle Atmel-Controller flashen. Entweder über JTAG,
> ISP oder DebugWire. Das einzige was es NICHT kann ist HV-Programmierung.

das würde bedeuten, dass auch der ATmega8 mit dem JTAGICE mkII 
programmiert werden kann. Kannst du mir sagen, wie das geht? Laut 
http://support.atmel.no/bin/customer?custSessionKe... 
ist es nicht möglich, aber vielleicht gibt's ja einen Trick oder ein 
Workaround?

Grüße
Chris

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Chris M. wrote:

> das würde bedeuten, dass auch der ATmega8 mit dem JTAGICE mkII
> programmiert werden kann. Kannst du mir sagen, wie das geht?

Ausschließlich mittels ISP, d. h. du benutzt das JTAG ICE mkII als
(zugegebenermaßen relativ teuren) ISP-Adapter.

Autor: Chris M. (norgac)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Jörg,

>> das würde bedeuten, dass auch der ATmega8 mit dem JTAGICE mkII
>> programmiert werden kann. Kannst du mir sagen, wie das geht?
>
> Ausschließlich mittels ISP, d. h. du benutzt das JTAG ICE mkII als
> (zugegebenermaßen relativ teuren) ISP-Adapter.

der liegt bei mir aber gerade herum ;)

Ich habe versucht, eine vorhandene Platine mit ATmega8 mittels JTAGICE 
mkII zu programmieren. Dazu habe ich den zum JTAGICE gehörenden Adapter 
auf den 6-poligen ISP-Stecker verwendet. (Der Adapter ist anscheinend 
korrekt, jedenfalls lässt sich ein ATmega162V auf STK500 
ISP-programmieren.)

Im AVR-Studio wird nach dem Konnektieren zum JTAGICE als Device jedoch 
kein ATmega8 angeboten, und der Controller in der Schaltung bleibt 
anscheinend permanent im Reset (zumindest lassen die LED-Zustände dies 
vermuten).

Wie kann ich AVR-Studio dennoch dazu bringen, den ATmega8 im ISP-Modus 
zu flashen? Oder muss ich gar statt AVR-Studio eine andere Software 
einsetzen?

Grüße
Chris

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Chris M. wrote:

> Im AVR-Studio wird nach dem Konnektieren zum JTAGICE als Device jedoch
> kein ATmega8 angeboten, und der Controller in der Schaltung bleibt
> anscheinend permanent im Reset (zumindest lassen die LED-Zustände dies
> vermuten).

Das zeigt nur, dass AVR Studio einfach mal unbedienbar ist. :-/

Du könntest ja avrdude nehmen...  Aber es geht auch mit AVR Studio,
du musst aber eben ausdrücklich den ISP-Modus für das JTAG ICE mkII
auswählen.

Autor: Chris M. (norgac)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Jörg,

> Aber es geht auch mit AVR Studio,
> du musst aber eben ausdrücklich den ISP-Modus für das JTAG ICE mkII
> auswählen.

den ISP-Modus habe ich ausgewählt, trotzdem wird mir im AVR-Studio bei 
der Device-Auswahl der ATmega8 nicht angezeigt (vermutlich weil er 
offiziell nicht unterstützt wird). Hier komme ich also anscheinend nicht 
weiter.

> Du könntest ja avrdude nehmen...

AVRDUDE + AVR8 Burn-O-Mat habe ich jetzt mal getestet. Damit kann ich 
mittels JTAGICE2 und ISP meinen ATmega8 beschreiben, auslesen usw. Fein, 
danke!

Was ich beim JTAGICE2 (gegenüber dem STK500) schade finde, ist die 
Tatsache, dass ich mein Target nicht über das Programmiergerät versorgen 
kann. Ich muss also eine externe Versorgungsspannung ans Target anlegen. 
Somit ist VTarget am ISP-Port des JTAGICE2 also nur zum auslesen der 
Targetspannung nützlich, sehe ich das richtig?

Noch eine Frage nachgeschoben: Kann ich mit einfachsten Mitteln das 
Flashen, Lockbits-Setzen und Verifizieren automatisieren? Quasi per 
"1-Click"®-Aktivierung. Könnte doch prinzipiell mit einem Batchfile 
gehen, oder?

Grüße
Chris

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Chris M. wrote:

> den ISP-Modus habe ich ausgewählt, trotzdem wird mir im AVR-Studio bei
> der Device-Auswahl der ATmega8 nicht angezeigt (vermutlich weil er
> offiziell nicht unterstützt wird). Hier komme ich also anscheinend nicht
> weiter.

Aktuelle Version installiert?  Ich wüsste nicht, warum die das
ablehnen sollten...  Aber gut, ich mag mich mit diesem Teil (wie
du obigem Posting sicher schon entnehmen konntest :) nicht selbst
rumschlagen.


> Was ich beim JTAGICE2 (gegenüber dem STK500) schade finde, ist die
> Tatsache, dass ich mein Target nicht über das Programmiergerät versorgen
> kann. Ich muss also eine externe Versorgungsspannung ans Target anlegen.

Ja, keine Ahnung, warum sie sich nicht getraut haben, die Spannung
mit rauszuführen.  Du kannst natürlich ein zweites USB-Kabel nehmen
und da bis zu 100 mA abgreifen.

> Somit ist VTarget am ISP-Port des JTAGICE2 also nur zum auslesen der
> Targetspannung nützlich, sehe ich das richtig?

Es wird außerdem dazu benutzt, die Pegelwandler für die Signale zu
versorgen.  Das sollte man berücksichtigen, wenn man mit angestecktem
ICE Sleep-Ströme messen will, da fließen noch einige 100 µA drüber
ins ICE.

> Noch eine Frage nachgeschoben: Kann ich mit einfachsten Mitteln das
> Flashen, Lockbits-Setzen und Verifizieren automatisieren? Quasi per
> "1-Click"®-Aktivierung.
avrdude -p m8 -c jtag2_isp -P usb -U yourfile.hex -U lock:w:0xfc:m

Autor: Chris M. (norgac)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Jörg,

> Aktuelle Version installiert?  Ich wüsste nicht, warum die das
> ablehnen sollten...  Aber gut, ich mag mich mit diesem Teil (wie
> du obigem Posting sicher schon entnehmen konntest :) nicht selbst
> rumschlagen.

ja, Version ist aktuell. Darf ich noch die Frage loswerden, mit welcher 
IDE du arbeitest? Ich bin mal gerade ambitionerter Einsteiger, vom Chef 
ins kalte Wasser gestürzt worden ;) und noch auf der Suche nach einer 
passenden Arbeitsumgebung. Da erschien mir das AVR-Studio + WinAVR - 
nach allem, was ich bisher an Informationen dazu gelesen habe - als ganz 
passend. Diese Annahme scheint aber nicht allgemeingültig zu sein :)

> [… weitere interessante Informationen …]

> avrdude -p m8 -c jtag2_isp -P usb -U yourfile.hex -U lock:w:0xfc:m

Super, danke! Werde es trotzdem noch mal genau nachlesen, aber anhand 
eines korrekten Beispiels ist das Nachvollziehen immer einfacher.

Grüße
Chris


PS: Machst du auch noch etwas anderes als hier im Forum Fragen zu 
beantworten? So schnelle Antworten wie hier von dir habe ich bisher 
selten erlebt. Danke nochmal.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Chris M. wrote:

> Darf ich noch die Frage loswerden, mit welcher
> IDE du arbeitest?

Ich mach' seit 17 Jahren nichts anderes als Emacs. ;-)

> PS: Machst du auch noch etwas anderes als hier im Forum Fragen zu
> beantworten?

Ja klar, arbeiten. :)  Aber zwischendurch muss man eh' immer mal
Pausengymnastik machen.  Außerdem teste ich gerade recht viel und
habe dann Zeit, auf das Auftreten des nächsten Bugs in der
Firmware zu warten...

Autor: Thomas Finke (thomas-hn) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast Du Admin-Rechte unter dem Account unter welchem Du versuchst das 
AVR Studio zu nutzen?
Die Atmel-Entwicklungsumgebung hat teilweise ihre Macken wenn sie keinen 
Admin-Account hat.
Anonsten einfach mal Rechner und Hardware alles aus- und wieder 
einschalten und dann nochmal versuchen den ATmega8 auszuwählen.
Wenn ich mich gerade nicht total irre, müsste es dann eigentlich gehen.

Gruß,

Thomas

P.S. Zu der einen Frage von ganz oben. Das JTAGICE mkII kann ISP, JTAG 
und debugWire. Das Debuggen geht aber NUR über JTAG und debugWire. ISP 
bietet hierzu keine Funktionalität.

Autor: Chris M. (norgac)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Jörg + Thomas,

sorry für die späte Rückmeldung; eine Auslandsdienstreise, Urlaub und 
ein paar wichtigere und dringendere Baustellen haben mich von meinen 
AVR-Forschungen abgehalten.

Mit AVRDUDE komme ich mittlerweile gut klar, nachdem es doch noch einige 
Anlaufschwierigkeiten gab. Das AVRDUDE-Handbuch und ein wenig 
Netzrecherche haben hier jedoch weitergeholfen.

Der ATmega8 ist übrigens definitiv nicht mit AVR-Studio + JTAGICE mkII 
zu programmieren - auch wenn dies prinzipiell blödsinnig ist. Naja, 
wahrscheinlich eine Entscheidung des Marketings.

Das letzte Problem, das ich bisher noch nicht lösen konnte, betrifft die 
Lockbits. Schreiben und Lesen funktioniert, aber AVRDUDE wertet nur die 
ersten 6 Bits aus, sodass ich bei der Verifikation mittels AVRDUDE immer 
eine Fehlermeldung bekam. Hat ein Weilchen gedauert, bis mir der Grund 
dafür klar wurde. Nun kann ich zwar im Parameter für AVRDUDE einen 
Lockbyte-Hexwert angeben, der nur die ersten 6 Lock-Bits berücksichtigt, 
schön wäre es jedoch, wenn ich dort den gleichen Hexwert eintragen 
könnte, wie AVR-Studio ihn mir anzeigt. Gibt's da einen Trick oder 
vielleicht eine Änderungsmöglichkeit im avrdude.conf oder muss ich mich 
einfach damit abfinden?

Vielen Dank und Grüße

Chris


PS: Falls es sinnvoller erscheint, dieses Posting zu einem neuen Thread 
zu machen, bitte ich um Verschiebung.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Chris M. wrote:

> Der ATmega8 ist übrigens definitiv nicht mit AVR-Studio + JTAGICE mkII
> zu programmieren - auch wenn dies prinzipiell blödsinnig ist. Naja,
> wahrscheinlich eine Entscheidung des Marketings.

Ich denke, dass das eher ein Versehen ist.

Wenn ich das XML-File des neuesten AVR Studios richtig interpretiere,
dann sollte damit auch der ATmega8 mit dem JTAG ICE mkII fürs
Programmieren möglich sein.  Der Tag dafür ist jedenfalls drin.

> Das letzte Problem, das ich bisher noch nicht lösen konnte, betrifft die
> Lockbits. Schreiben und Lesen funktioniert, aber AVRDUDE wertet nur die
> ersten 6 Bits aus, sodass ich bei der Verifikation mittels AVRDUDE immer
> eine Fehlermeldung bekam. [...]

https://savannah.nongnu.org/bugs/?21954

Autor: Daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
in dem Manual 
http://www.msc-ge.com/en/129-www/version/default/p... 
steht:

"The JTAGICE mkII does not support ISP as a general programming 
interface, but has got limited ISP support for handling the DWEN fuse 
and Chip Erase. ISP is supported by Atmel’s STK500 and AVRISP."

wenn ich das richtig verstehe kann man damit im ISP kein Programm 
flashen sondern nur die DWEN-fuse programmieren und ein Chip Erase 
machen. ist das der Grund, warum man kein Mega8 damit programmieren 
kann?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.