PWM empfangen

Gast #3575413
Lesenswert?
• ▲
▼
Welche guten Möglichkeiten existieren, um ein PWM Signal zu empfangen?

Ich kenne derzeit die Variante, dass man bei der steigenden/fallenden
Flanke einen Interrupt generiert und in der Interrupt-Routine
eine frei laufender Timer ausgelesen wird.

Gibt es noch andere Varianten?

Gibt es vielleicht mittlerweile irgendeinen uC,
der Unterstützung für den Empfang/das Messen eines PWM-Signals
mitbringt?
Gast #3575434
Lesenswert?
• ▲
▼
Robi schrieb:
> Gibt es noch andere Varianten?

Natürlich.

Input Capture ist das hauptsächliche hardwareunterstütze Verfahren, das 
wurde schon beschreiben.

Es geht auch anders:

Wenn ein 100Hz PWM SIgnal auf 1 bis 100 Prozent erfasst werden soll, 
kann man eine Interruptfunktion an einen auf 100us programmierten Timer 
hängen, die bei aktiven Eingang die Prozentzahl incrementiert (und beim 
100ten Aufruf nach aussen überträgt und rücksetzt).

Das ist insbesondere die Lösung wenn die Flanken des Signals unsauber 
sind un prellen können, also hunderte Interrupts in kurzer Zeit absetzen 
würden.

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.