STM32F4 / SysTick Calibration Value Register

Gast #3165252
Lesenswert?

Wozu gibt es denn dieses Register?

Im SysTick Reload Value Register wird angegeben, bis wohin gezählt wird, 
die Clock Source ist in SysTick Control definiert. Damit ist doch 
festgelegt, wie oft ein Intterupt kommt, wozu also diese Kalibrierung?

Im Reference Manual sowie im Cortex-M4 User Guide wird das Register zwar 
erwähnt, jedoch nicht beschrieben, welche Auswirkung es hat. Hab ich da 
was nicht verstanden?

Danke+LG
Persönliche Seite #3166943
Lesenswert?

ARM Einsteiger schrieb im Beitrag #3165252:
> Im Reference Manual sowie im Cortex-M4 User Guide wird das Register zwar
> erwähnt, jedoch nicht beschrieben, welche Auswirkung es hat. Hab ich da
> was nicht verstanden?

Die Idee hinter dem Register ist, unabhängig von der aktuell 
eingestellten Taktfrequenz, bzw. auch unabhängig von der Implementierung 
einer beliebig komplexen Vorteilerkaskade, per Konvention eine 10ms 
Zeitbasis zu bekommen.
Anstatt sich mühsam die Frequenz des SysTick aus irgendwelchen 
Registerwerten auszurechnen und sich daraus die Zeitbasis zu basteln, 
kann jede Software auf jedem Device einfach diesen Wert auslesen. 
Wenn man dann noch dynamisch die Frequenz ändert, sollte sich der Wert 
des Registers entsprechend anpassen.
Den meisten Herstellern ist das korrekte Zuweisen des Werts aber 
anscheinend zu aufwändig.
#3167007
Lesenswert?

Moritz M. schrieb:
> Ich denke, dass Register kann man einfach vernachlässigen.

Ja. Das Silizium hätte man besser in einen 32-Bit Systick gesteckt.

Marcus Harnisch schrieb:
> Den meisten Herstellern ist das korrekte Zuweisen des Werts aber
> anscheinend zu aufwändig.

Aha. Das könnte erklären, warum ich damit meine Probleme hatte :-)

Unter welchen Umständen geht es denn (Hersteller, nur bei einer 
bestimmten Taktfrequenz)?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren