Forum: Mikrocontroller und Digitale Elektronik STM32F072RB 48MHz?


von Alex S. (thor368)


Lesenswert?

Tach allerseits,

ich spiele momentan mit einem Rudel Discoverboards rum. Angefangen habe 
ich mit eibem F030 und nun sitze ich an einem F072B. Woran ich momentan 
hänge ist folgendes:

Auf dem F030 habe ich ein snippet geschrieben, dass eine LED mit 1s 
Zyclusszeit mithifle des SysTick interrupts blinken lässt. War dort kein 
Problem. Nun versuche ich es auf dem F072B und die Blinkrate ist auf ein 
mal 6 mal langsamer. Kurzes debuggen in der hardware offenbart: Die PLL 
läuft nicht und es wird statt dessen die HSI als clock source verwendet.

Also die PLL auf 48MHz konfiguriert und als Quelle geschaltet. Bums, µC 
bleibt hängen. Danach habe ich schrittweise PLLMUL von 1x bis auf 11x 
erhöht. Scheinbar kein Problem. Als ich dann auf 48MHz hoch stellte 
passierte erst gar nix und auf ein mal blinkt die LED doch! Allerdings 
mit Unterbrechungen und gestotter. Trotzdem, der 1s Takt ist erahnbar.

Was soll das denn sein??
Alex

von Jim M. (turboj)


Lesenswert?

Klingt als hättest Du die Waitstates vom Flash vergessen - und der 
liefert Dir jetzt immer mal falsche Daten.

Die Libs vom Hersteller sollten das korrekt einstellen - arbeitest Du 
direkt mit den Registern?

von Alex S. (thor368)


Lesenswert?

> Klingt als hättest Du die Waitstates vom Flash vergessen - und der
> liefert Dir jetzt immer mal falsche Daten.

Sieht so aus. Hatte im Kopf, dass ST flash schneller ist. Die Cortex M0 
Gurken sparen da wohl.

> Die Libs vom Hersteller sollten das korrekt einstellen - arbeitest Du
> direkt mit den Registern?

Ich arbeite mir den startup scripten, die direkt von ARM bzw. ST kommen. 
Normalerweise konfiguriert das script die Proz clock auf max f. Als ich 
mit der clock rumgespielt habe, habe ich die Regsiter direkt per live 
debugging verbogen.

Ich schaue mal wie das mit der std periph lib geht. Vielleicht hilft das 
ja schon.

Thor

von MCUA (Gast)


Lesenswert?

>Sieht so aus. Hatte im Kopf, dass ST flash schneller ist. Die Cortex M0
>Gurken sparen da wohl.
Die M3,M4-Gurken (..F2,..F3,..F4) auch, keine schneller als ca 33MHz!

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.