Christopher J. schrieb:
> Wenn du den Prescaler änderst, dann wird
> der beim nächsten Update-Event aktualisiert. Das Verhalten ist somit wie
> mit einem gebufferten ARR, d.h. wenn ARPE=1, mit dem Unterschied, das
> man es nicht ausschalten kann.
Also sollte ich das ARPE bit einfach komplett auf 1 setzen damit der
Prescaler dann automatisch eingeladen wird (gerade gesehen,dass das auch
in cubemx geht) oder sollte ich besser das UDIS Bit auf 0 setzen und
dann auf den nächsten Überlauf warten? (das kann ja gegebenenfalls sehr
lange dauern)
Christopher J. schrieb:
> Ich würde die Typen aus stdint.h verwenden, also uint32_t Prescaler =
> ...
1 | long long Prescaler = SystemCoreClock / freq / 10 ;
|
Irgendwie hat er das geteilt durch wohl nicht übernommen. Int dachte ich
wäre nicht so schön wegen der Rechner Genauigkeit. Es mag aber auch
sein, dass es bei dem verhältnismäßigen großen SystemCoreClock keine
Rolle spielt.
Christopher J. schrieb:
> Außerdem ist long long viel zu groß und für die Rechnerei empfiehlen
> sich Zweierpotenzen statt Zehnerpotenzen.
Ja das werde ich noch ändern, vielen dank schonmal :)