STM32 Input Capture, 2 Kanäle mit einem Timer

OP #1613146
Hallo!

Ist es irgendwie möglich mit einem Timer (Bsp. Timer 3) die Frequenz von 
zwei Eingangsignalen per Input Capture zu messen.

In meinem Beispiel habe ich dafür Channel 1 und Channel 3 verwendet. Die 
Messung des Signals an Channel 1 stellt kein Problem dar und 
funktioniert auch soweit. Die Messung vom Signal an Channel 3 wird durch 
die Messung an Channel 1 beeinflusst!

So wie ich das sehe ist das Problem, dass er nach jedem Capture Compare 
IR vom Channel 1 das Counter Register resetet. Und bei einem Capture 
Event wird ja schließlich nur der Counter Wert übernommen...

Eine Möglichkeit dies zu umgehen fällt mir spontan ein:

Der Counter resetet sich beim Capture Event nicht mehr und läuft durch.

Bei jedem Capture wird die Differenz zwischen vorigem Counter Wert und 
jetzigem Counter Wert berechnet.

Würde das so funktionieren oder gibt es auch eine einfachere Möglichkeit 
dies in Hardware zu realisieren?

lg
Mathias
Mathias M. schrieb:

> Bei jedem Capture wird die Differenz zwischen vorigem Counter Wert und
> jetzigem Counter Wert berechnet.

Das funktioniert und es scheint mir der übliche Weg zu sein. Nachteilig 
ist, dass es bei Zeitintervallen oberhalb der Timerperiode etwas 
umständlich wird.
Capture und Überlauf können ganz oder fast gleichzeitig auftreten. Wenn 
Zeiten >= Periode keine Rolle spielen, dann ist es trivial weil man den 
Überlauf komplett ignorieren kann.

Andernfalls muss man ein bischen aufpassen, denn die Abarbeitung im 
Interrupt-Handler erfolgt dabei nicht unbedingt in der Reihenfolge des 
urprünglichen Auftretens der auslösenden Ereignisse.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.