PWM beim STM-Board einstellen

Gast #5752396
Lesenswert?
• ▲
▼
Hallo, es geht um ein STM32F407 Discovery-Board.
Ich möchte einen general purpose Timer auf PWM betreiben.
Zur Einstellung habe ich 3 Variablen:

-Prescaler
-Counter Period
-Pulse

Mit Prescaler und Counter Period stelle ich den Überlauf und die 
einzelnen Zählschritte bis dahin ein. Das Problem ist aber, dass ich 
damit die Periode zwischen zwei Pulsen einstelle, oder? So habe ich das 
jedenfalls verstanden..

Ich möchte aber eine definierte Länge des Pulses haben, also der soll 
praktisch eine ganze Zählperiode füllen. Der LOW-Pegel dazwischen spielt 
keine Rolle, da diese Aktion auchj nur einmal ausgeführt werden soll 
(one pulse mode). Liege ich richtig in der Annahme, dass ich das über 
die Einstellungen in "Pulse" ändern kann? Sind das evtl. die 
Zählschritte in der Counter Period, die vom Puls belegt werden?
Gast #5752558
Lesenswert?
• ▲
▼
Ist am besten am Beispiel erklärt.

Nehmen wir an, dein Timertakt ist 72MHz.

Dann stellst du den Prescaler=72-1 eins ein und erhältst einen 1µs Puls 
(1MHz).

Mit Period=10-1 zählst du 10 Perioden bis zum Zähler Neustart.
Das ergibt 100kHz PWM.

Mit Pulse kannst du dann 0 bis 9 Pulse innerhalb der Periode einstellen.

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.