Hallo zusammen,
ich versuche derzeit, Firmware auf einen NRF51822 zu flashen, und alle
meine Versuche scheinen erfolglos zu sein. Ich scheitere am initialen
Verbindungsaufbau. Ich verwende einen Beacon (siehe Anhang), an den ich
Kabel an SWDCLK, SWDIO, GND und VDD gelötet habe. Anschließend habe ich
diese Kabel an die entsprechenden Ports des Programmiergeräts
angeschlossen (siehe Anhang). Zusätzlich habe ich eine Datei für die
OpenOCD-Konfiguration erstellt:
1 | #nRF51822 Target
|
2 | source [find interface/stlink.cfg]
|
3 |
|
4 | transport select hla_swd
|
5 |
|
6 | set WORKAREASIZE 0x4000
|
7 | source [find target/nrf51.cfg]
|
Ich versuche nun, eine Verbindung mit dem einfachen Befehl herzustellen:
Die Ausgabe lautet wie folgt:
1 | Open On-Chip Debugger 0.11.0
|
2 | Licensed under GNU GPL v2
|
3 | For bug reports, read
|
4 | http://openocd.org/doc/doxygen/bugs.html
|
5 | Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
|
6 | Info : Listening on port 6666 for tcl connections
|
7 | Info : Listening on port 4444 for telnet connections
|
8 | Info : clock speed 1000 kHz
|
9 | Info : STLINK V2J29S7 (API v2) VID:PID 0483:3748
|
10 | Info : Target voltage: 3.272873
|
11 | Error: Unable to set adapter speed
|
12 | Error: init mode failed (unable to connect to the target)
|
Wie man sieht, scheint die Verbindung vom Programmiergerät zum Chip
nicht zu funktionieren. Die LED auf dem Board leuchtet kurz nach dem
Einstecken auf, und ich verwende Linux, falls das relevant ist.
Da ich leider keine Erfahrung mit dem Chip oder seiner Programmierung
habe und lediglich eine bin-Datei flashen möchte, sind meine Fragen:
Muss ich noch etwas anderes tun, um die Firmware auf den Chip zu
bekommen? Ist meine Programmierhardware korrekt, oder ist sie die
falsche für den Chip? Gibt es noch andere Dinge zu beachten? Gibt es
noch etwas anderes, das ich ausprobieren kann?
Vielen Dank für Eure Hilfe,
Danny