Forum: Mikrocontroller und Digitale Elektronik STM32F407VE läuft nicht an


von Nils (Gast)


Lesenswert?

Hallo,

ich habe gerade eine selbst entworfene Platine zusammengelötet, auf der 
ein STM32F407VE sitzt.

Jetzt wollte ich testen, ob das ganze funktioniert und habe folgendes 
festgestellt:

Ich kann den STM ohne Probleme über SWD (mit einem ST-LinkV2 über 
OpenOCD und über Atollic TrueSTUDIO probiert) beschreiben, wenn ich das 
geschriebe Image verifizieren lasse, werden auch keine Fehler 
festgestellt, das Beschreiben des Flashs geht also ohne Probleme.

Das Programm ist erstmal ein ganz simples "starte und laufe in einer 
Endlosschleife".

Wenn ich jetzt den STM resette und direkt in den halt-Zustand versetze, 
steht der PC auf 0x1fff3e54 und der MSP auf 0x20001000.

Der STM läuft leider nicht an, was er macht, ist (laut PC) ein paar 
Adressen im Bereich 0x1fff3xxx abzulaufen um dann in einer Schleife 
zwischen den Adressen 0x1fff3d94 und 0x1fff3d9c zu landen und diese 
scheinbar nie zu verlassen.

Laut Cortex-M4 ref. manual liegt in diesem Bereich der Code-Bus, über 
den Instruktionen und Daten geholt werden.

Das gleiche Programm läuft übrigens ohne Probleme, wenn ich es 
(unverändert) auf ein STM32F4-Discovery Board programmiere.

Nun meine Frage: Kann mir jemand einen Tipp geben, womit das 
zusammenhängen kann? Mit den PC Adressen kann ich nichts anfangen, da 
liegt ja kein Programmcode bzw. ich kann es nicht auf den Programmcode 
mappen, falls das Problem mit diesem zusammenhängt.

Da das ganze mir nach Endlosschleife aussieht und diese bevorzugt so 
früh bei der Initialisierung von Takten (Quarze & PLLs) genutzt werden: 
Könnte es evtl. damit zusammenhängen, dass der HSE nicht startet?

Bin grade etwas Ratlos und wäre um Tipps sehr dankbar.

MfG
Nils

von holger (Gast)


Lesenswert?

Hast du die Boot Pins richtig angeschlossen?

von Nils (Gast)


Lesenswert?

holger schrieb:
> Hast du die Boot Pins richtig angeschlossen?

Ich danke dir für den Tipp, hatte tatsächlich den BOOT0 aus Versehen 
sowohl gegen 3.3V als auch gegen GND gezogen...

Den einen Widerstand raus und schon gehts :)

Ich danke dir vielmals

MfG
Nils

von Mazze (Gast)


Lesenswert?

Nils schrieb:
> sowohl gegen 3.3V als auch gegen GND gezogen...
oh oh...

von Nils (Gast)


Lesenswert?

Mazze schrieb:
> Nils schrieb:
>> sowohl gegen 3.3V als auch gegen GND gezogen...
> oh oh...

Über Widerstände ;)

Warum auch immer habe ich den einen kleiner gemacht als den anderen, 
muss wohl ein Moment der geistigen Umnachtung gewesen sein...

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.