Verwendung eines externen ST-Link / V2 mit dem STM32F4 Discovery Board

8

Ich habe ein STM32F4 Discovery Board und einen ST-Link / V2 Programmierer.

Ich möchte meinen eigenen ST-Link (nicht den eingebetteten) zum Programmieren und Debuggen der Karte verwenden.

Wie soll ich den externen ST-Link an die Karte anschließen?

Maddouri
quelle
1
Was steht in der Dokumentation?
Leon Heller
So verwenden Sie den eingebetteten ST-Link. Ich bevorzuge jedoch die Verwendung eines eigenständigen Programmiergeräts (ein bisschen wie das, was der Autor dieses Artikels mit seinem uLink2 gemacht hat)
maddouri
1
@ 865719 Dieser Artikel erklärt genau, was Sie brauchen. Was ist deine Frage?
Passant

Antworten:

16

Sie müssen den Mikrocontroller vom St-Link-Teil der Platine isolieren. Entfernen Sie dazu einfach die Jumper an den CN3-Pins.

CN3-Standort 'CN3'

Um dann Ihren externen st-Link zu verwenden, stellen Sie die folgenden Verbindungen zu den Stiftleisten der Mikrocontroller her:

  • SWDIO -> PA13
  • SWCLK -> PA14
  • GND -> GND
  • VAPP -> 3 V / VDD

  • Schließen Sie das USB-Kabel nicht an

Programmieren Sie es im SW-Modus.

Ich bin mir nicht sicher, warum Sie dies tun möchten, es sei denn, Sie möchten stattdessen JTAG zum Programmieren verwenden. Wenn dies der Fall ist, lassen Sie es mich wissen und ich werde die Antwort aktualisieren.

Sensoren
quelle
Sie müssen die Karte auch weiterhin extern mit Strom versorgen, da der Programmierer keine Stromversorgung bereitstellt. Sie können dies tun, indem Sie das USB-Kabel an ein USB-Ladegerät anschließen.
Phoenix
0

Anleitung für STM32F407G-DISC1 (aktualisierte STM32F4DISCOVERY)

Aktualisieren Sie die ST-Link / v2-Firmware

Wie in dieser Antwort erläutert , enthalten einige neuere Versionen des STM32F407G-DISC1 Firmware in ihrem integrierten ST-Link / v2, die den F4 zurücksetzen, sofern sie nicht an ein USB-Gerät angeschlossen sind.

  1. Laden Sie das ST-LINK-Dienstprogramm herunter und installieren Sie es auf einem Windows-PC.

  2. Wählen Sie ST-LINK | Firmware Update | Geräteverbindung | Ja >>>>

Es V2.J32.M22ist bekannt, dass die Version funktioniert.

Externe Stromversorgung

Versorgen Sie die Karte anschließend über eine externe Stromquelle (z. B. ein Netzteil mit Wechselstrom zu USB). Der externe ST-Link / v2 liefert keinen Strom. Schließen Sie es nicht an den PC an, von dem aus Sie programmieren, da Sie sonst versehentlich versuchen könnten, die Onboard-Version zum Programmieren zu verwenden.

CN3-Jumper entfernen

Entfernen Sie, wie in der Antwort von @ Sensor gezeigt, die beiden CN3-Jumper, um den F4-Chip vom integrierten ST-Link / v2 zu isolieren.

Verbinden Sie den externen ST-Link / v2

Verdrahten Sie die folgenden Verbindungen zwischen dem externen ST-Link / v2 und der DISCOVERY-Karte gemäß dem ST-Link / v2-Handbuch .

PIN1  (VAPP)      -> VDD
PIN7  (TMS_SWDIO) -> PA13
PIN9  (TCK_SWCLK) -> PA14
PIN15 (NRST)      -> NRST
PIN20 (GND)       -> GND

PIN15wird beim Programmieren unter Windows nicht unbedingt benötigt, wurde jedoch beim Programmieren unter openocdVerwendung der Standardkonfiguration benötigt stm32f4discovery.cfg.

Programm

Der folgende Befehl kann verwendet werden, um mit dem neuesten Master-Zweig von zu programmieren, der unter MacOS openocdinstalliert wurde brew install --HEAD openocd.

$ openocd -f board/stm32f4discovery.cfg -c "program app.elf" -c reset -c shutdown
Phönix
quelle
Wenn Sie das pyboardauf diese Weise programmieren möchten, lesen Sie diese Seite .
Phoenix