Die Installation überprüfen
In diesem Abschnitt überprüfen wir, ob einige der erforderlichen Werkzeuge bzw. Treiber korrekt installiert und konfiguriert wurden.
Verbinden Sie Ihren Laptop oder PC über ein Mini-USB-Kabel mit dem Discovery-Board. Das Discovery-Board verfügt über zwei USB-Anschlüsse; verwenden Sie den mit „USB ST-LINK“ beschrifteten Anschluss, der sich mittig an der Platinenkante befindet.
Überprüfen Sie außerdem, ob die ST-LINK-Stiftleiste bestückt ist. Siehe dazu die Abbildung unten; die ST-LINK-Stiftleiste ist dort hervorgehoben.
Führen Sie nun den folgenden Befehl aus:
openocd -f interface/stlink.cfg -f target/stm32f3x.cfgHINWEIS: Ältere Versionen von OpenOCD, einschließlich der Version 0.10.0 aus dem Jahr 2017, enthalten nicht die neue (und zu bevorzugende) Dateiinterface/stlink.cfg; stattdessen müssen Sie möglicherweiseinterface/stlink-v2.cfgoderinterface/stlink-v2-1.cfgverwenden.
Sie sollten die folgende Ausgabe erhalten und das Programm sollte die Konsole blockieren:
Open On-Chip Debugger 0.10.0
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
Info : auto-selecting first available session transport "hla_swd". To override use 'transport select <transport>'.
adapter speed: 1000 kHz
adapter_nsrst_delay: 100
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
none separate
Info : Unable to match requested speed 1000 kHz, using 950 kHz
Info : Unable to match requested speed 1000 kHz, using 950 kHz
Info : clock speed 950 kHz
Info : STLINK v2 JTAG v27 API v2 SWIM v15 VID 0x0483 PID 0x374B
Info : using stlink api v2
Info : Target voltage: 2.919881
Info : stm32f3x.cpu: hardware has 6 breakpoints, 4 watchpointsDer Inhalt stimmt möglicherweise nicht exakt überein, aber die letzte Zeile bezüglich Breakpoints und Watchpoints sollten Sie sehen. Wenn dies der Fall ist, beenden Sie den OpenOCD-Prozess und fahren Sie mit dem nächsten Abschnitt fort.
Falls du die Zeile „breakpoints“ nicht erhalten hast, versuche einen der folgenden Befehle.
openocd -f interface/stlink-v2.cfg -f target/stm32f3x.cfgopenocd -f interface/stlink-v2-1.cfg -f target/stm32f3x.cfgWenn einer dieser Befehle funktioniert, bedeutet das, dass Sie eine ältere Hardware-Revision des Discovery-Boards besitzen. Das stellt kein Problem dar, aber merken Sie sich diesen Umstand, da Sie die Konfiguration später etwas anders vornehmen müssen. Sie können zum nächsten Abschnitt übergehen.
Wenn keiner der Befehle als normaler Benutzer funktioniert, versuchen Sie, sie mit Root-Rechten auszuführen (z. B. sudo openocd ..). Sollten die Befehle mit Root-Rechten funktionieren, überprüfen Sie, ob die udev-Regeln korrekt eingerichtet wurden.
Wenn Sie an diesem Punkt angelangt sind und OpenOCD nicht funktioniert, eröffnen Sie bitte eine Problemmeldung, und wir helfen Ihnen weiter!