Forum: Mikrocontroller und Digitale Elektronik STM32F407VET6 mit zu hoher Taktfrequenz geflasht


von Hanspeter S. (kendo1)


Lesenswert?

Ich vermute, das ich ein STM32F407VET6 - Board mit zu hoher Taktfrequenz 
geflasht habe.

Hergang:
--------

Erstes mal flashen und verify war o.k.

Von nun ging nichts mehr!!!

ST-Link V2 über Anschlüsse:  SWDIO, SWCLK und GND

Habe es leider mit einem zweiten Board ebenfalls versucht.
Hier ging es auch nur das eine Mal.

Habe dann festgestellt dass ich in der
 "cmsis_boot/stm32f4xx.h"  --> HSE_VALUE noch auf 8 anstatt wie für 
dieses Board notwendig, auf 25 gesetzt habe.

Damit ist der CPU-Takt mehr als 3 mal zu hoch!!!

Kann das der Grund sein, und wie könnte ich das "retten"
ohne den 25MHz Quarz auszulöten und temporär durch einen 8MHz Quarz zu 
ersetzen?

Vielen Dank zum Voraus!!

von pegel (Gast)


Lesenswert?

Müsste das gleiche Prinzip wie hier sein:

https://www.youtube.com/watch?v=jEz0C2bT2M0

Ab 1:25.

von Jim M. (turboj)


Lesenswert?

Hanspeter S. schrieb:
> ST-Link V2 über Anschlüsse:  SWDIO, SWCLK und GND

VCC fehlt. Der ST-Link braucht die Betriebsspannung als Referenz.

Hanspeter S. schrieb:
> und wie könnte ich das "retten"

-> "Connect under Reset"

Also muss auch die Reset Leitung an den ST-Link ran.

von J. -. (Gast)


Lesenswert?

Notfalls kommst Du über den Bootloader wieder rein und kannst neu 
flashen. Der läuft auf dem internen Taktgenerator, iirc.

von Hanspeter S. (kendo1)


Lesenswert?

Vielen Dank für Eure rasche Hilfe!

Die zwei Boards sind gerettet!

Bis anhin konnte ich mit der CoIDE die Boards flashen über den dafür 
vorgsehenen PinHeader, der nur die vier PINs aufweist:
- 3.3V, SWDIO, SWCLK, GND.

Das kleine Board hatte keinen RESET herausgeführt auf die PinHeader.
Also dann halt am RESET-Button einen Draht anlöten und mit dem RESET-Pin 
des ST-LINK verbunden.

Das reichte noch nicht um das Board in der CoIDE neu zu flashen.

Musste mir das ST-Link-Utility herunterladen und installieren,
um einen CHIP-ERASE durchzuführen.
Es kommt sofort der hinweis in den Settings
-> "Connect under Reset" einzustellen.
Super, das Flash konnte gelöscht werden.

Und nun kann auch wieder mit der CoIDE geflasht werden!

Mehrmals sogar! Vorausgesetzt mann "verhaut" sich nicht mit dem PLL 
Einstellungen und setzt die CPU-Frequenz auf ausserirdische Werte!

Danke!

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.