Forum: Mikrocontroller und Digitale Elektronik AVR Prozessor mit JTAG programmieren


von Johannes S. (Firma: Privat) (bitschieber123)


Lesenswert?

Liebe Mikrocontroller-Gemeinde,

in meinem Bastel-Projekt (Haussteuerung) verwende ich den µC Atmega2560 
auf einer Platine. Ich programmiere derzeit über ISP mit einem 0815 
Programmer im Atmel Studio.
Nun ist das Projekt mittlerweile etwas aufwendiger und ich benötige JTAG 
Debugging-Funktionen: (Breakpoints, Register anzeigen, etc.)

Dazu route ich eine neue Platine und führe mir die JTAG Anschlüsse aus.
Ich kaufe mir das AVR JTAG-ICE mkII und verbinde die entsprechenden 
Pins.
Wenn JTAG nicht aktiviert ist, entsprechende Fuses setzen.

Meine Frage: Ist es wirklich so einfach, oder übersehe ich etwas?

Vielen Dank für eure Hilfe!
mfg
Johannes

von Karl M. (Gast)


Lesenswert?

Hallo Johannes,

Soll das jetzt eine theoretische Betrachtung werden?

Oder hast du es nicht selbst schon mal getestet Fragezeichen

Was sagt das Datenblatt dazu?

Viel Erfolg!

von Stefan F. (Gast)


Lesenswert?

Du hättest wenigstens mal den µC nennen können, denn nicht alle AVR 
haben ein JATG Interface. Weit verbreitet ist z.B. auch der Debug-Wire.

von S. Landolt (Gast)


Lesenswert?

> verwende ich den µC Atmega2560

von Stefan F. (Gast)


Lesenswert?

S. Landolt schrieb:
>> verwende ich den µC Atmega2560

Oh, das habe ich übersehen. Der hat JTAG.

von Andreas M. (amesser)


Lesenswert?

Ja, genauso ist es. Bei der Beschaltung des JTAGs die Pullups nicht 
vergessen. Hinweise zur BEschaltung gibt es auch in dem AVR JTAG ICE 
user manual.

von spess53 (Gast)


Lesenswert?

Hi

>Hinweise zur BEschaltung gibt es auch in dem AVR JTAG ICE user manual.

Und wo ist da die Stelle mit den PullUps? Das funktioniert in unseren 
Geräten seit fast 20 Jahren ohne PullUps problemlos.

MfG Spess

von H.Joachim S. (crazyhorse)


Lesenswert?

An sich ist JTAG ne schöne Sache - wenn man die benötigten Pins am MC 
tatsächlich frei hat.

von Andreas M. (amesser)


Lesenswert?

spess53 schrieb:
> Und wo ist da die Stelle mit den PullUps? Das funktioniert in unseren
> Geräten seit fast 20 Jahren ohne PullUps problemlos.

Sieht wohl so aus, das beim aktivieren des JTAGS interne Pullups 
drangeschaltet werden. Dann kann man sich die natürlich sparen.

Abschnitt "Connecting JTAG ICE to Target Board" kann man durchaus so 
interpretieren

von Johannes S. (Firma: Privat) (bitschieber123)


Lesenswert?

@ Karl M. Nein, die Steuerung läuft bereits seit längerer Zeit.
Will nur auf JTAG-Programmierung umstellen sonst nichts ändern.
Die neue Hardware mit JTAG Anschlüssen soll auf Anhieb richtig sein, 
sonst kostet mich das jedes mal ca. 80 Euro für eine neue Platine.

Ich habe mit JTAG schon im Studium gearbeitet, nur noch nie selbst in 
Hardware implementiert. (Software&Hardware war einfach vorgefertigt bzw. 
konfiguriert)

@ Andreas M. Danke für den Hinweis, werde Pull-Ups hinzufügen. Sicher 
ist Sicher. Doppelt sollte kein Nachteil sein.

@ H.Joachim S Danke für den Hinweis, die Pins sind frei!

von nix und n. (nixundnul)


Lesenswert?

Wenn die Frage schonmal da ist: Du hast geschrieben:mkII
Welche Hardware außer diesem könnte man verwenden?
Was ist als Software (IDE) möglich?
Ich arbeite sonst auf Ubuntu. Hat jemand in diesem Zusammenhang das 
schonmal gemacht?

von Thomas W. (diddl)


Lesenswert?

nix und n. schrieb:
> Welche Hardware außer diesem könnte man verwenden?

MPLAB PICkit 4 In-Circuit Debugger


Der Dragon kann das auch , wenn ich mich recht erinnere

von Rudolph (Gast)


Lesenswert?

Johannes S. schrieb:
> Ich kaufe mir das AVR JTAG-ICE mkII und verbinde die entsprechenden
> Pins.

Eher ein Atmel ICE, das JTAG-ICE MKII ist gewissermaßen antiquarisch.
Der fette Folien-Leiter da dran war jetzt auch nicht so der große Wurf.

Das JTAG-ICE MK3 war schon freundlicher und Anfang 2014 kam der Atmel 
ICE.

Johannes S. schrieb:
> Die neue Hardware mit JTAG Anschlüssen soll auf Anhieb richtig sein,
> sonst kostet mich das jedes mal ca. 80 Euro für eine neue Platine.

Da machst Du irgendwas falsch.
Zumal als erster Schuss ja eine Platine mit verringerter Funktion 
reichen würde, 5 Stück für 10 Euro aus China, inklusive Versand, dauert 
nur halt so drei Wochen.

von Johannes S. (Firma: Privat) (bitschieber123)


Lesenswert?

Rudolph schrieb:
> Das JTAG-ICE MK3 war schon freundlicher und Anfang 2014 kam der Atmel
> ICE.

Danke für die Info!: Welchen Programmer würdest du mir empfehlen?
Kann ja etwas mehr ausgeben, wenn die Platine weniger kostet.

Rudolph schrieb:
> Zumal als erster Schuss ja eine Platine mit verringerter Funktion
> reichen würde, 5 Stück für 10 Euro aus China, inklusive Versand, dauert
> nur halt so drei Wochen.

Die derzeitige Platine habe ich bei PCB-Pool machen lassen.
Mikrocontroller und die SMD-Bauteile habe ich gleich mit bestücken 
lassen.
Bauteile haben die von sich aus bestellt. Hatte 0 Aufwand.

Könntest mir so einen "China"-Fertiger empfehlen?



Danke!

nix und n. schrieb:
> Was ist als Software (IDE) möglich?
> Ich arbeite sonst auf Ubuntu.

Unter Ubuntu vlt. Eclipse. Muss mal schaun.

von nix und n. (nixundnul)


Lesenswert?

Johannes S. schrieb:
> Unter Ubuntu vlt. Eclipse. Muss mal schaun.

Habe riesen Probleme, das eclipse überhaupt installiert zu bekommen 
(geht nicht) in Kubuntu 18.04. Von den Erweiterungen, die man braucht, 
erstmal abgesehen. Im Moment arbeite ich mit geany; hat aber keine 
riesen Vorteile zum 08/15 Editor kate+make.

Inzwischen habe ich was gelesen von avarice avr-gdb ddd
Es gibt einen AVR JTAG ICE in Amazonien, für 16.95€, wahrscheinlich vom 
Chinamann.

von Dieter F. (Gast)


Lesenswert?

nix und n. schrieb:
> AVR JTAG ICE

Das sind die Guten mit "JTAG-Mund-Mikroprozessor" :-)

von Stefan F. (Gast)


Lesenswert?

Dieter F. schrieb:
> Das sind die Guten mit "JTAG-Mund-Mikroprozessor" :-)

Erkläre den Witz mal, ich habe ich nicht verstanden.

von Rudolph (Gast)


Lesenswert?

Johannes S. schrieb:
> Welchen Programmer würdest du mir empfehlen?

Wie gesagt, Atmel ICE (die Basic Variante), die Preise sind allerdings 
seitdem Microchip Atmel übernommen hat nicht so lustig und es könnte 
sich lohnen einen "AVR JTAG ICE in Amazonien" zu bestellen.

Wenn Du Dich mit MPLAB-X anfreunden magst, der SNAP Debugger von 
Microchip dürfte im Moment der günstigste sein der kein China-Clone ist.
Nur, keine Ahnung wann die mal aus der Beta raus kommen und wie weit der 
AVR Support ist, der ARM Support ist bisher für die Tonne.
Aber steht ja auch noch Beta dran...

Johannes S. schrieb:
> Die derzeitige Platine habe ich bei PCB-Pool machen lassen.
> Mikrocontroller und die SMD-Bauteile habe ich gleich mit bestücken
> lassen.
> Bauteile haben die von sich aus bestellt. Hatte 0 Aufwand.

Okay, das ist was anderes, kann man machen, dafür klingen 80 Euro dann 
eher niedrig angesetzt.

> Könntest mir so einen "China"-Fertiger empfehlen?

Nicht direkt, ich bestücke lieber selber.
Ich weiss zwar, dass z.B. Elecrow das anbietet ( 
https://www.elecrow.com/services.html ), aber ausprobiert habe ich das 
noch nicht.

von Anton M. (antonm)


Lesenswert?

H.Joachim S. schrieb:
> An sich ist JTAG ne schöne Sache

Eher nicht bei dem Pin-Bedarf.
Man sollte schleunigst zusehen dass man auf aktuellere AVRs wechselt die 
nur noch 1 Pin zum Debuggen/Programmieren brauchen (UPDI) und auch 
vieeel günstiger sind.

: Bearbeitet durch User
von Dieter F. (Gast)


Lesenswert?

Stefanus F. schrieb:
> Erkläre den Witz mal, ich habe ich nicht verstanden.

Dann lese mal die Artikelbeschreibung - vielleicht funkt es dann?

von fchk (Gast)


Lesenswert?

nix und n. schrieb:
> Inzwischen habe ich was gelesen von avarice avr-gdb ddd
> Es gibt einen AVR JTAG ICE in Amazonien, für 16.95€, wahrscheinlich vom
> Chinamann.

Aufpassen! Das sind Clones vom alten JTAGICE 1. Der kann nur Uralt-AVRs.

fchk

von Stefan F. (Gast)


Lesenswert?

>> Erkläre den Witz mal, ich habe ich nicht verstanden.

Dieter F. schrieb:
> Dann lese mal die Artikelbeschreibung - vielleicht funkt es dann?

https://www.amazon.de/WKELECTRONDE-AVR-Programmierer-Aluminiumgeh%C3%A4use-%C3%9Cberstromschutz-Weitspannung/dp/B07FFVG5ZM/ref=sr_1_3?ie=UTF8&qid=1547824356&sr=8-3&keywords=AVR+JTAG+ICE
Oh Mann, diese "Übersetzung" versteht ja kein Mensch.

von Rudolph R. (rudolph)


Lesenswert?

fchk schrieb:
> Aufpassen! Das sind Clones vom alten JTAGICE 1. Der kann nur Uralt-AVRs.

Ugh, mit sowas hat man wenig bis keine Freude.

Anton M. schrieb:
> Eher nicht bei dem Pin-Bedarf.
> Man sollte schleunigst zusehen dass man auf aktuellere AVRs wechselt die
> nur noch 1 Pin zum Debuggen/Programmieren brauchen (UPDI) und auch
> vieeel günstiger sind.

Und welcher AVR mit 256k Flash und 100 Pins ist das?

Ein ATSAMC20N18A könnte interessant sein wenn es was neues sein soll, 
und um bei 5V zu bleiben, das ist nur kein AVR.
Der kostet dann auch nur 2,67€ bei Mouser statt der 10,66€ die Mouser 
für einen ATMEGA2560-16AU haben will.
Oh, schlimm, zwei Pins für die SWD Schnittstelle.

Wenn man bei 100 Pins die vier Pins für JTAG nicht über hat, dann nimmt 
man eben einen Port-Expander dazu oder macht ADC per SPI oder so.

von H.Joachim S. (crazyhorse)


Lesenswert?

Anton M. schrieb:
>> An sich ist JTAG ne schöne Sache
>
> Eher nicht bei dem Pin-Bedarf.

Klar, das ist nicht so toll - aber ich sagte ja: wenn man die Pins frei 
hat :-)
Ausserdem kann man auch oft "unwichtige" Sachen auf diese Ports legen, 
die dann eben erst später funktionieren.

Für den 2560 finde ich keinen halbwegs passenden neueren Ersatz und die 
Pins sind frei - also spricht hier absolut nichts gegen JTAG.

von Anton M. (antonm)


Lesenswert?

H.Joachim S. schrieb:
> Für den 2560 finde ich keinen halbwegs passenden neueren Ersatz

OK, im Augenblick nicht. Vielleicht aber kämst Du bei

Johannes S. schrieb:
> meinem Bastel-Projekt (Haussteuerung)

(ggf. in besserem Design) auch mit viel weniger Pins und Speicher aus?

: Bearbeitet durch User
von Dieter F. (Gast)


Lesenswert?

Anton M. schrieb:
> Johannes S. schrieb:
>> meinem Bastel-Projekt (Haussteuerung)
>
> (ggf. in besserem Design) auch mit viel weniger Pins und Speicher aus?

Und warum - bei einem Bastelprojekt?

von Anton M. (antonm)


Lesenswert?

Dieter F. schrieb:
> Und warum - bei einem Bastelprojekt?

Nun, bevor man in allzu veraltete Sachen investiert

Johannes S. schrieb:
> Dazu route ich eine neue Platine und führe mir die JTAG Anschlüsse aus.
> Ich kaufe mir das AVR JTAG-ICE mkII und verbinde die entsprechenden
> Pins

lohnt ab und zu der Gedanke, ob es nicht besser ginge.

von Dieter F. (Gast)


Lesenswert?

Anton M. schrieb:
> Nun, bevor man in allzu veraltete Sachen investiert

Bei rund 10 € rede ich nicht von "Investition" - und wie geschrieben, es 
geht um ein Bastelprojekt. Da nehme ich z. B., womit ich gut zurecht 
komme und ausreichend Reserven habe. Ich muss nicht auf den Cent genau 
kalkulieren.

von Anton M. (antonm)


Lesenswert?

Dieter F. schrieb:
> Bei rund 10 € rede ich nicht von "Investition"

Nein. Wir reden von

Johannes S. schrieb:
> sonst kostet mich das jedes mal ca. 80 Euro für eine neue Platine.

und von einem AVR JTAG-ICE mkII, dass, so es sich überhaupt noch 
neuwertig auftreiben lässt weil es nicht mehr hergestellt wird, gut und 
gerne 100€ kostet.

: Bearbeitet durch User
von Dieter F. (Gast)


Lesenswert?

Anton M. schrieb:
> und von einem AVR JTAG-ICE mkII, dass, so es sich überhaupt noch
> neuwertig auftreiben lässt weil es nicht mehr hergestellt wird, gut und
> gerne 100€ kostet.

http://shop.mymcu.de/index.php?sp=article.sp.php&artID=200142

Und bevor Du auch noch darauf herumreitest: Die Kabel kann man sehr 
günstig selbst konfektionieren und ein Gehäuse kann mann billig drucken.

von Anton M. (antonm)


Lesenswert?

Dieter F. schrieb:
> http://shop.mymcu.de/index.php?sp=article.sp.php&artID=200142

Wenn es schon die nackte Platine sein soll tät ich für das (gleiche) 
Geld viel lieber ein modernes Atmel ICE erwerben. Die Entscheidung liegt 
natürlich beim TO :)

von Dieter F. (Gast)


Lesenswert?

Anton M. schrieb:
> Wenn es schon die nackte Platine sein soll tät ich für das (gleiche)
> Geld viel lieber ein modernes Atmel ICE erwerben.

Zeig mal bitte woher - für das gleiche Geld.
(Wenn da etwas kommt widersprichst Du Dir selbst :-) - wobei die 
Wahrscheinlichkeit gegen 0 geht)

von Joachim B. (jar)


Lesenswert?

Anton M. schrieb:
> Dieter F. schrieb:
>> http://shop.mymcu.de/index.php?sp=article.sp.php&artID=200142

das ist doch das neue nur ohne Gehäuse

> Wenn es schon die nackte Platine sein soll tät ich für das (gleiche)
> Geld viel lieber ein modernes Atmel ICE erwerben. Die Entscheidung liegt
> natürlich beim TO :)

welches wäre das? (Atmel ICE ist ja nun mal wenig aussagekräftig)

: Bearbeitet durch User
von Anton M. (antonm)


Lesenswert?

Dieter F. schrieb:
> Und bevor Du auch noch darauf herumreitest

Mag nicht herumreiten, nur schadet es nicht, die Gedanken um so ein 
umfangreiches Projekt etwas weiter zu fassen. Es kommen derzeit soviele 
neue tolle AVRs raus, da wär ein oller teurer JTAG-Schinken voll für die 
Katz.

Dieter F. schrieb:
> Zeig mal bitte woher - für das gleiche Geld.

http://www.chip45.com/products/atmel-ice-pcba_avr_atmega_xmega_sam_arm_cortex-m_isp_pdi_tpi_awire_jtag_usb_programmieradapter_on-chip_debugger.php

Also, egal wie der TO sich entscheidet, viel Erfolg!

von Dieter F. (Gast)


Lesenswert?

Anton M. schrieb:
> lieber ein modernes Atmel ICE erwerben.

Atmel-ICE is a powerful development tool for debugging and programming
ARM® Cortex®
-M based Atmel® SAM and Atmel AVR®  microcontrollers with On-Chip Debug 
capability.
It supports:
• Programming and on-chip debugging of all Atmel AVR 32-bit 
microcontrollers on both JTAG and aWire interfaces
• Programming and on-chip debugging of all Atmel AVR XMEGA®  family 
devices on both JTAG and PDI 2-wire interfaces
• Programming (JTAG, SPI, UPDI) and debugging of all Atmel AVR 8-bit 
microcontrollers with OCD support on either JTAG, debugWIRE or UPDI 
interfaces
• Programming and debugging of all Atmel SAM ARM Cortex-M based 
microcontrollers on both SWD and JTAG interfaces • Programming (TPI) of 
all tmel tinyAVR®  8-bit microcontrollers with support for this 
interface

Was fehlt da?

von Dieter F. (Gast)


Lesenswert?

Anton M. schrieb:
> Dieter F. schrieb:
>> Zeig mal bitte woher - für das gleiche Geld.
>
> 
http://www.chip45.com/products/atmel-ice-pcba_avr_atmega_xmega_sam_arm_cortex-m_isp_pdi_tpi_awire_jtag_usb_programmieradapter_on-chip_debugger.php

Wo genau ist der Unterschied (außer das die Bilder des PCB exakt 
identisch sind) und "das moderne Atmel ICE"? Übrigens ist es 5 Cent 
teurer :-)

von Anton M. (antonm)


Lesenswert?

Dieter F. schrieb:
> Wo genau ist der Unterschied

Wir reden natürlich vom gleichen, nur eben nicht vom

Johannes S. schrieb:
> Ich kaufe mir das AVR JTAG-ICE mkII

von Dieter F. (Gast)


Lesenswert?

Anton M. schrieb:
> Wir reden natürlich vom gleichen

Also nix mit "moderner" - O.K. hätte mich auch gewundert.

von Einer K. (Gast)


Lesenswert?

Dieter F. schrieb:
> Was fehlt da?

HVSP HVPP

:-)

von Johannes S. (Firma: Privat) (bitschieber123)


Lesenswert?

Erstmal vielen Dank für die zahlreichen Beiträge!

Rudolph R. schrieb:
> Ein ATSAMC20N18A könnte interessant sein wenn es was neues sein soll,
> und um bei 5V zu bleiben, das ist nur kein AVR.
> Der kostet dann auch nur 2,67€ bei Mouser statt der 10,66€ die Mouser
> für einen ATMEGA2560-16AU haben will.
> Oh, schlimm, zwei Pins für die SWD Schnittstelle.

Ich habe mir das Datenblatt angesehen - tolles Teil!
Vor allem mit 5V und CAN FD :)
Wenn ich mal Zeit finde muss ich mir die neuen Microchip µC genauer 
ansehen- sehr vielversprechend.

Bleibe aber bei dem Projekt beim Atmega2560, dieser ist schon 
überdimensioniert. Ich kenn halt die Funktionen und Register fast 
auswendig.

Anton M. schrieb:
> Wenn es schon die nackte Platine sein soll tät ich für das (gleiche)
> Geld viel lieber ein modernes Atmel ICE erwerben. Die Entscheidung liegt
> natürlich beim TO :)


So mache ich es auch, passende Pfostenstecker und Flachbandkabel habe 
ich sogar zu Hause! Ich werde mir zur Platine eine Lötpastenschablone 
bestellen und von Hand bestücken - Dafür kaufe ich mir das Atmel ICE 
(PCB) und habe länger etwas davon. Vor allem kann ich dann auch die 
neuen Prozessoren programmieren.

Bin dann sogar noch preiswert rausgekommen!


Rudolph schrieb:
> Okay, das ist was anderes, kann man machen, dafür klingen 80 Euro dann
> eher niedrig angesetzt.

Ich hatte übersehen, dass 80€ bei der ersten Platine nur der Grundpreis 
waren - Bestücken hatte ca. 150 gekostet :(

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.