STM32 Zeitmessung mit ersten Timer + Zeitverzögerte aktion mit zweitem Timer, wie syncronisieren?

Gast #2500127
Lesenswert?
• ▲
▼
Hallo, ich wusste nicht genau wie ich das Thema im Betreff beschreiben 
soll. Ich messe momentan eine Frequenz mit Timer2 Interrupten. Dazu 
nehme ich die Zeiten der Positiven Flanken über den Timer 2 auf. Ich 
möchte nun einen weiteren Timer (Timer_4), der mir nach jeder Flanke 
zeitverzögert eine Aktion ausführt, in dem er in seine ISR springt. 
Timer_4 ist höher priorisiert als Timer_2 und darf diesen somit 
unterbrechen.

Sprich: Flanke kommt und z.B. 500 ms später geht eine LED an, nächste 
Flanke kommt und 500 = ms später geht die LED wieder aus.

Ich arbeite allerdings mit wesentlich kürzeren Zeiten und die Aktionen 
betreffen keine LED. Daher möchte ich eine hohe Genauigkeit erreichen. 
Das Problem ist nun folgendes:

Wenn ich mit Timer_2 die Zeit aufnehme, und mit Timer 4 einen 
zeitverzögerten Interrupt auslösen möchte. Wie bekomme ich die Startzeit 
von Timer 4 zum Interruptzeitpunkt, so dass ich den neuen Comparewert 
dort eintragen kann.

Mir fallen momentan nur folgende Dinge dazu ein:
1. Ansteuern beider Interruptpins so dass beide Werte im Interrupt 
gleichzeitig aufgenommen werden.

2. ein Getcounter beim Start der Timer2 ISR, was ich aber für eine 
Schlechte Lösung halte, da schon während des Aufrufes Zeit vergeht und 
zusätzliche Verfälschungen auftreten können wenn mir Timer_4 dort 
zufällig rein springt.

3. Vielleicht gibt es eine Methode den Timer_4 Wert beim Aufruf des 
Timer_2 mit zu speichern oder beide Timer zu syncronisieren oder sie 
sind schon Syncronisiert?


Es handelt sich hier um einen STM32F107VC Controller.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.