Externe Stromversorgung zum STM32F4 Discovery Board

Ich habe kürzlich die Programmierung des STM32F429ZI DISC1-Boards abgeschlossen. Ich bin ziemlich neu in diesem Bereich und möchte jetzt davon wegkommen, es über USB mit dem PC zu verbinden und es über ein Netzteil mit Strom zu versorgen.

Derzeit habe ich eine 5-V-Versorgung an den 5-V-Pin angeschlossen. Dies scheint die Platine insofern gut mit Strom zu versorgen, als der LCD-Bildschirm aufleuchtet (leer weiß), die PWR-LED (LD2) aufleuchtet. Mein Programm kann jedoch nicht initialisiert werden und bleibt leer, die COM-LED (LD1) blinkt ebenfalls mit ca. 1 Hz rot.

Hat jemand Erfahrung mit der Stromversorgung dieses Boards oder anderer STM32-Boards ohne USB-Verbindung? Und wenn ja, an welchen Pin hast du angeschlossen und mit welcher Spannung?

AFAIK müssen Sie den Regler mit Strom versorgen, damit Ihr Board alle erforderlichen Spannungen wie 3,3 V hat
Auf der Platine befindet sich ein Jumper, JP3, der das 3V-Netz mit dem VDD-Netz verbindet. Ist dieser Jumper auf Ihrem Board eingeschaltet? Es wird auch als Idd bezeichnet und befindet sich über der blauen Schaltfläche. Soweit ich im Schaltplan sehe, ist die MCU nur mit dem VDD-Netz verbunden.
Sie können auch die Spannung an Pin 22 des P1-Headers (in der Nähe des BOOT0-Pins) messen.
@BenceKaulics danke für deine Antwort. JP3 ist verbunden, und die an Pin 22 (Vdd) gemessene Spannung beträgt knapp 3 V. Haben Sie einen Link zu Schaltplänen, haben Sie Mühe, etwas auf der ST-Website zu finden.
Ihr Programm funktioniert einfach gut, wenn Sie das Board über USB mit Strom versorgen?
@BenceKaulics Ja, das Programm funktioniert gut, wenn USB zur Stromversorgung verwendet wird. Danke für den Link
Welches Netzteil verwendest du statt USB?
Ich habe eine 12-V-Steckdose und leite diese über einen Regler LM2490T 5. Dies scheint ohne Probleme zu funktionieren

Antworten (4)

Aus dieser Antwort: STM32F429I-DISC1 kann nicht über ext mit Strom versorgt werden. USB-Batterie

Es gibt/gab ein bekanntes Problem mit der ST-LINK-Firmware, die mit den Boards F429I-DISC1 und F407-DISC1 und möglicherweise anderen geliefert wird. Der STM32 wird vom Debugger zurückgesetzt, wenn er nicht an einen Host-Computer angeschlossen ist, sodass die Anwendungsfälle für Ladegeräte/Batterien fehlgeschlagen sind. Dies kann behoben werden, indem auf aktuelle Firmware-Revisionen aktualisiert wird. Zum Datum der Veröffentlichung würde ich empfehlen, die ST-LINK-Dienstprogramme v3.9.0 herunterzuladen und damit die Firmware zu aktualisieren. Dadurch wurden Probleme gelöst, die ich damit gesehen habe.

Ich glaube, das begründet, was Sie getan haben und warum es funktioniert hat.

Hallo, bitte vermeiden Sie es, Antworten zu posten, die nur Links sind. Der Zweck dieser Website ist es, eine Sammlung von Antworten bereitzustellen, die anderen helfen könnten. Links werden schließlich unterbrochen.
Aus dem Link wurde die Lösung bereitgestellt: Es gibt / gab ein bekanntes Problem mit der ST-LINK-Firmware, die mit den F429I-DISC1- und F407-DISC1-Karten und möglicherweise anderen geliefert wird. Der STM32 wird vom Debugger zurückgesetzt, wenn er nicht an einen Host-Computer angeschlossen ist, sodass die Anwendungsfälle für Ladegeräte/Batterien fehlgeschlagen sind. Dies kann behoben werden, indem auf aktuelle Firmware-Revisionen aktualisiert wird. Zum Datum der Veröffentlichung würde ich empfehlen, die ST-LINK-Dienstprogramme v3.9.0 herunterzuladen und damit die Firmware zu aktualisieren. Dadurch wurden Probleme gelöst, die ich damit gesehen habe.
In überarbeiteter Form scheint dies eine nützliche Antwort zu sein. Obwohl das Problem mit dem Zurücksetzen bereits erwähnt wurde, mit dem Vorschlag, es zu trennen, hat dies Konsequenzen und ein Software-Fix, wie hier erwähnt, scheint vorteilhafter zu sein.
Das Upgrade mit ST-Link Utility v4.3.0.0 von der Firmware V2.J27.M15 -> V2.J32.M22funktionierte für mein STM32F407-DISC1-Board .

Ich habe das herausgefunden (oder besser gesagt, ich habe eine Lösung gefunden), nachdem ich die Schaltpläne und einige allgemeine Diagnosearbeiten (Messen von Spannungen, Kurzschlüssen usw.)

Im Benutzerhandbuch UM1670 (von ST) gibt es eine Seite (19) zu Lötbrücken

"SB10 (STM_RST) OFF Keine Auswirkung auf NRST-Signal von STM32F429ZIT6. ON NRST-Signal von STM32F429ZIT6 ist mit GND verbunden."

Die Lötbrücke ist standardmäßig nicht verbunden, aber da es sich um einen STM-Reset handelte, entschied ich mich, dies kurzzuschließen, um zu sehen, ob ich das gesamte System zum Zurücksetzen bringen könnte. Es funktionierte.

Ich habe seitdem SB10 dauerhaft zusammengelötet und das Board läuft wie erwartet. (Ich bin mir nicht sicher, wie dieser Fix genau funktioniert. Ich muss ihn einlesen und dann diese Antwort bearbeiten.)

WICHTIGER HINWEIS: SIE WERDEN NICHT MEHR IN DER LAGE SEIN, CODE AUF DAS GERÄT ÜBER USB ZU FLASHEN, SOBALD SIE SB10 GELÖTET HABEN, ICH HABE NOCH NICHT ÜBERPRÜFT, ABER STELLEN SIE SICH VOR, ENTLÖTEN WÜRDE IHNEN ERLAUBEN, DIE MCU WIEDER ZU PROGRAMMIEREN

Ich vermute, dass entweder Sie oder das, woraus Sie zitieren, hier etwas durcheinander gebracht haben, da Sie, wie wörtlich gesagt, sagen, dass Sie NRST der Ziel-MCU mit Masse verbunden haben. Dies würde den Betrieb überhaupt verhindern. Im Gegensatz zu einigen anderen ARM-Cortex-Implementierungen erfordert ein STM32 normalerweise keine Manipulation der NRST-Leitung, um eine SWD-Programmierung zu erreichen, obwohl es erforderlich sein kann, sich von verstümmelten Zuständen oder einem Programm zu erholen, das die SWD-Leitungen sofort beim Start für einen anderen Zweck umfunktioniert.
Die SB10-Lötbrücke ist mit dem NRST-Pin des STM32F103CBT6 (nicht mit dem STM32F429ZI) verbunden, der eigentlich der On-Board-ST-Link ist. Deshalb kann er die MCU nicht mehr flashen.
@BenceKaulics ja, du hast Recht. ChrisStratton Ich bin mir nicht sicher, warum das Benutzerhandbuch SB10 mit dem Hauptprozessor auf der Platine verbindet, aber Bence hat Recht, es ist tatsächlich mit dem ST-Link-Prozessor auf der Platine verbunden
Es scheint, dass es keine aktualisierte Firmware für den integrierten STLINK gibt, die dieses Problem behebt.

Ein Reddit-Beitrag, den ich gelesen habe ( https://www.reddit.com/r/stm32f4/comments/4f6uaq/stm32f4_discovery_external_power_supply_not/ ), schlug vor, dass Sie Ihre Firmware aktualisieren. Ich habe dies getan und meine Programme laufen jetzt. LD1 blinkt jedoch immer noch.

Können Sie angeben, auf welche Version Sie aktualisiert haben?
LD1 wird wahrscheinlich blinken, bis der Programmierer aufgezählt ist. Es nervt und hat mir tatsächlich Probleme bereitet
Dasselbe wie im reddit-Link. V2.J27.M15

Solange keine USB-Verbindung zum Programmer besteht, blinkt LD1 langsam. Es hat mir in der Vergangenheit tatsächlich Probleme bereitet und mich gezwungen, einen Widerstand zu entfernen, um ihn auszuschalten.

Sie versorgen korrekt oder zumindest den richtigen Header-Pin.

Ja, ich hatte einen Beitrag von dir diesbezüglich gesehen. Ob das LED-Blinken Probleme für mein Programm verursacht, bleibt abzuwarten, da es nicht wirklich startet. Ich werde Ihren Beitrag überprüfen und sehen, um welchen Widerstand es sich handelt, und versuchen, ihn möglicherweise zu entfernen. Danke
Vielen Dank für die Hinweise zum korrekten Einschalten, geschätzt
@ Pop24 Die blinkende LED betrifft wahrscheinlich nicht einmal den Mikrocontroller, sondern nur den Programmierer