Forum: Mikrocontroller und Digitale Elektronik SAMD21G18A nicht mehr programmierbar


von Stefan S. (sschultewolter)



Lesenswert?

Hallo,

ich habe hier noch ein Arduino Zero Board herumliegen, welches ich in 
Atmel Studio nutze. Bzw. es wieder nutzen wollte.

Derzeit habe ich mir noch keinen SWD Programmer gegönnt, habe nur noch 
zusätzlich einen STM32F0 Discovery.

Sehe ich das richtig, dass das noch soweit aktuell ist.
https://www.mikrocontroller.net/articles/STM32
1
Jedes STM32 Discovery board hat einen ST-Link für Programmierung/Debugging per SWD on-board, welcher auch für eigene STM32 Target Hardware benutzt werden kann (ca. 12,- bis 19,-, je nach Typ). Diese ist jedoch mit 1.8Mhz Takt ein sehr langsamer Vertreter seiner Art. Mit ihm lässt sich jedoch sowohl Debuggen als auch Flashen von fremden Hex- und Binary-Files. Er unterstützt aber nur MCU's von ST. NXP, Atmel oder TI lassen sich damit nicht programmieren. Der Discovery-JTAG beherrscht nur SWD, kein JTAG und hat keine Treiber, die den Programmierprozessor vom Zielsystem elektrisch entkoppelt. Der ST-Link in der Adapterversion hat diese Nachteile nicht und kostet auch nur um 20 .
Ich würde gerne den ATSAMD21G18A auf dem Zero Board wieder beleben, habe 
jedoch nur als SWD Programmer den Discovery.

So, nun zum eigentlich Ablauf des Problems mit dem SAMD21.

Öffne ich Atmel Studio 7.0, wird das Board direkt als Arduino Zero 
erkannt. µUSB Kabel ist am Programming Port angeschlossen und Treiber 
werden akzeptiert.

Ich habe nun ein neues Projekt für den Prozessor erstellt. Unter Tool 
wurde der EDGB eingestellt. SWD Clock steht default auf 2MHz, habe 
diesen auf 500 kHz bereits heruntergestuft.

Kompiliere ich nun ein Testprogramm, erhalte ich beim Debuggen den 
Fehler:
"Failed to launch programm. Error: Reset line is high, cannot debug"

An den IO/s ist nichts angeschlossen.

Gehe ich nun unter Tools - Device Programming,
kann ich die Target Voltage erfolgreich mit 3,3V auslesen.

Ändere ich nun hier die SWD Clock auf 500 kHz und drücke Set erfolgt als 
Status
1
Setting clock value...OK
2
Reading clock value...OK
3
Setting interface settings... OK


Möchte ich nun aber Device informationen auslesen, erhalte ich nur die 
Meldung [siehe Bild]
sowie im Info Fenster
1
Timestamp:  2015-11-17 21:14:15.852
2
Severity:    INFO
3
ComponentId:  20000
4
StatusCode:  0
5
6
Reset line is high, cannot enter debug
7
8
Unable to enter programming mode. Verify device selection, interface settings, target power, security bit, and connections to the target device.

von Stefan S. (sschultewolter)


Lesenswert?

Edit:

Das Problem sollte gelöst sein. Das Board war auch einem Sparkfun 
Kunstoffhalter geschraubt (Polyamid). Habe nun alle Schrauben gelöst und 
der Resetpegel änderte sich. Kann wieder auslesen.

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.