Wie sind die Einstellungen beim signalgetakteten Timer durchzuführen (STM-Board)

Gast #5740914
Lesenswert?

Hallo, Achtung Anfänger! ;)

Ich möchte einen Timer-Interrupt auslösen immer genau dann, wenn eine 
bestimmte Anzahl Flanken von 2 digitalen Quadratursignalen eines 
Drehgebers gezählt wurden. Das STM 32F407 bietet genau für diese 
Anwendung eine Timer-Funktion "Encoder" mit 2 Eingängen an. 
(Dokumentation siehe Anhang)...

Laut der Doku wird ja hier ein Auf-und Abwärts-Zähler generiert (je nach 
Drehrichtung), der sich nach Durchlauf des benutzerdefinierten Werts im 
TIMx_ARR -Register immer wieder zurücksetzt.

Da ich mit CubeMX konfiguriere, habe ich bei den Timer-Optionen nur die 
Auswahl den Prescaler und die Counter Period auf einen Wert 
einzustellen. Daher zwei Fragen:

1. Ist Counter Period der Eintrag ins TIMx_ARR?

2. Müssen sonst wirklich keine weiteren Einstellungen bei den Clock 
Configurations und dem Prescaler gemacht werden? Als ich mich mit den 
Timern vertraut gemacht habe, bin ich nämlich immer auf folgende Formel 
gestoßen

TIM= clock/((Prescaler+1)*(Period+1))

werden diese Einstellungen bei signalgesteuerten Timern nicht benötigt?
Angehängte Dateien:
Gast #5741237
Lesenswert?

und noch eine Frage. Kann ich mit dem entsprechenden Timer dann auch 
noch ein korrektes Interrupt auslösen? Bei der NVIC Konfiguration 
erscheint dann leider nicht mehr die Möglichkeit für global interrupt, 
sondern nur "capture compare".. inwiefern wäre das ein Nachteil?

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