Forum: Mikrocontroller und Digitale Elektronik Atmel ICE Pinbelegung


von Uwe H. (Gast)


Angehängte Dateien:

Lesenswert?

Guten Abend Freunde der Elektronik!

Irgendwie habe ich Probleme mit der Atmel Dokumentation. Ich habe den 
ARM Cortex SAMD10D14A uC von Atmel (M0+) mit dem Atmel ICE in der PCBA 
Version verbunden gemäß Schaltplan. Da die PCBA Version ohne die 
sauteuren Kabel und ohne Adapterplatine kommt, hatte ich mir nur das 10 
polige Debugkabel mit den 2 Pfostenverbindern im 50 mil Raster bestellt, 
die 1:1 durchverbunden sind. Dazu hatte ich mir einen kleinen Adapter 
gebaut, so daß ich 1:1 auf einen 10 poligen Pfostenverbinder gehe im 
wesentlich robusteren 2,54 mm Raster. Laut ICE Manual 
(http://www.atmel.com/Images/Atmel-42330-Atmel-ICE_UserGuide.pdf ) habe 
ich das SWD Pin Mapping auf S.22 verwendet, was allerdings enorm 
abweicht von der Atmel-ICE JTAG Pin Description auf S.16. Mag sein, daß 
je nach Modus der SAM Programmierstecker anders belegt ist. Das SWD Pin 
Mapping wird allerdings im Zusammenhang mit dem 10-Pin Mini-Squid Cable 
erwähnt, was ich nicht benutze, weshalb ich befürchte, daß dort die Pins 
nicht 1:1 durchgeführt, oder gar "verwurschtelt" werden. Auf jeden Fall 
bekomme ich mit meinem Aufbau keinerlei Kommunikation, vermutlich, weil 
die Steckerbelegung nicht stimmt. Hat jemand Erfahrung mit dem ICE? Hier 
gibt es zwar einen alten Beitrag, bei dem angeblich Atmel die Stecker um 
180 Grad verdreht, was aber hier nicht der Fall ist.

Achso, ihr hattet mir damals die Angst genommen vor den kleinen 
Rastermaßen der uCs und mir zu KICAD geraten, was ich beides beherzige, 
danke!

Mit frustrierten Grüßen,

Uwe

Sorry, den Schaltplan hatte ich versehentlich zweimal hochgeladen!

von Uwe H. (Gast)


Angehängte Dateien:

Lesenswert?

Hier mal ein Beispiel für einen Widerspruch innerhalb einer Seite, siehe 
Bild. Mal ist der Pull-up Widerstand kritisch, dann wird er empfohlen. 
Eine Seite weiter fehlt er im Schaltplan....

von Dieter K. (dieda)


Angehängte Dateien:

Lesenswert?

Diese Bilder zeigen das originale Adapterkabel des ICE.
Damit siehst du zumindest das "Gewurschtel" für den 6-poligen Stecker.
Für den Adapter auf die anderen Anschlüsse müsste ich erst mal suchen...

LG Dieter

von Frank K. (fchk)


Lesenswert?

So, wie ich sehe, ist die Pinbelegung des SAM-Steckers identisch mit der 
neuen 10-Pin JTAG/SWD Pinbelegung von ARM, wie sie z.B. hier beschrieben 
ist.

http://www.keil.com/support/man/docs/ulink2/ulink2_hw_connectors.htm

(Keil gehört zu ARM)

Ansonsten gelten die Standardregeln für ARM:

SWCLK/TCK braucht einen Pulldown.
SWIO/TMS und die anderen JTAG-Signale brauchen einen Pullup.
Reset braucht einen Pullup.

Widerstandswerte zwischen 10k und 100k.

Dann sollte es funktionieren, es sei denn Atmel hat irgendwas spezielles 
an der Debug-Einheit gedreht.

fchk

von Uwe H. (Gast)


Lesenswert?

Ich danke dir Dieter für die Fotos, die mir zeigen, daß hier fleißig die 
Reihenfolge der Anschlüsse durcheinander gebracht wurde. Jetzt wäre der 
Zählsinn des Steckers interessant...
Dankbare Grüße,

Uwe

von Uwe H. (Gast)


Lesenswert?

Hallo Frank!

Vielen Dank für deinen Link, der mich umhaut, da er völlig neue Aspekte 
gegenüber der Atmel Doku bringt, etwa Pulldown Widerstand.... Aber auch 
die ansonsten überall benötigten Pullups sind Neuigkeiten. Ohne deine 
Info hätte ich keine Chance gehabt, traurig (für Atmel/Microchip)!

Nur zur Sicherheit: Der im SWD Mode beschriebene 10 polige Stecker, ist 
das der direkt an dem ICE angelötete? Wenn ja, wären meine Anschlüsse 
korrekt, allerdings die Pullups/Pulldown völlig daneben, no chance.
Werde es morgen ausprobieren!


Zusatz: Lustig auch, Atmel spricht beim SWD mode immer vom two wire 
mode,also nur SWDCLK und SWDIO. Aber einen Reset gibt es auch noch, 
womit wir beim three wire mode wären, Chaos total!

Dankbare Grüße,

Uwe

von Dieter K. (dieda)


Angehängte Dateien:

Lesenswert?

Im UserGuide steht eigentlich alles drin.
Trotzdem nochmal das jpg mit den Bezeichnungen der Pins

: Bearbeitet durch User
von Frank K. (fchk)


Lesenswert?

Uwe H. schrieb:
> Nur zur Sicherheit: Der im SWD Mode beschriebene 10 polige Stecker, ist
> das der direkt an dem ICE angelötete? Wenn ja, wären meine Anschlüsse
> korrekt, allerdings die Pullups/Pulldown völlig daneben, no chance.
> Werde es morgen ausprobieren!

Vergleich die Doku vom Atmel Ice mit der offiziellen ARM Doku:

http://infocenter.arm.com/help/topic/com.arm.doc.faqs/attached/13634/cortex_debug_connectors.pdf

Das hier ist die offizielle Dokumentation des ARM Debug-Interfaces.

https://static.docs.arm.com/ihi0031/c/IHI0031C_debug_interface_as.pdf

So detailliert willst Du es wahrscheinlich gar nicht wissen.

Hier ist der zugrunde liegende IEEE-Standard:
http://fiona.dmcs.pl/~cmaj/JTAG/JTAG_IEEE-Std-1149.1-2001.pdf

http://www.support.code-red-tech.com/CodeRedWiki/HardwareDebugConnections
https://community.nxp.com/thread/388998

"Some MCUs do not include internal pull-up or pull-down resistors on 
JTAG/SWD pins. You  will need to review the datasheet for the specific 
MCU being used to confirm. Where internal resistors are not provided, 
these should be added externally onto your board as detailed above. You 
may use resistors between 10K and 100K for these signals. This will 
prevent the signals from floating when they are not connected to 
anything. Failure to do this will lead to, at best, unreliable debug 
connections, or more likely no ability to debug at all.

Note for TCK/SWCLK, although a pull-down is recommended, you can 
alternatively use a pull-up. The main thing is that it does not float. 
Note in particular that if the MCU provides an internal pull-up on this 
signal, then adding an external pull-down on the board is not 
recommended."

Kurz gesagt: Wichtig ist, dass die Pins auf definierten Pegeln sind.

fchk

von Dieter K. (dieda)


Lesenswert?

Hallo Uwe.

Zumindest Pin 9 muss noch nach Figur und Tabelle 4.4 auf GND.

LG Dieter

von Uwe H. (Gast)


Lesenswert?

Hallo Frank und auch Dieter!

Tja, ich habe die Pull-ups und den Pull-down exakt befolgt, auch den 
fehlenden Ground, der aber mit Sicherheit nicht kriegsentscheidend war, 
da schon zweimal vorhanden. Keine Besserung des Problems. Habe auch 
einen 2. uC auf einem Steckbrett mit neuem Programmierkabel aufgebaut, 
umsonst. Atmel Studio 7.X (neuste Version) sagt beim Auslesen der device 
signature "no device detected, unable to enter programming mode". Sollte 
mein ICE eine Macke haben? Signale kommen allerdings überall am uC an 
(Pins 11-13), wobei am Pin 13 (SWDIO) eine negative Spannung von -0.9V 
anliegt im Ruhezustand. Habe auch mal alle Typen beim SAMD10D14 
eingestellt, erfolglos. Ich hole schon mal das Handtuch zum werfen 
raus....
Beste Grüße,

Uwe

von Uwe H. (Gast)


Lesenswert?

Hallo zusammen!

Fehler gefunden, der ICE hat eine Macke. Sieht man sich die Signale 
genauer an, hat das eher mit Analogtechnik zu tun, die Pegel stimmen 
vorne und hinten nicht, werde das Gerät dem Mouser zurückschicken.
BG

Uwe

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.