Forum: Mikrocontroller und Digitale Elektronik PWM beim STM-Board einstellen


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von janhh (Gast)


Bewertung
0 lesenswert
nicht 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?

von janhh (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Kann mir da wirklich niemand weiterhelfen?

von pegel (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hast du ein DSO?

von janhh (Gast)


Bewertung
0 lesenswert
nicht lesenswert
was soll das sein?^^

von janhh (Gast)


Bewertung
0 lesenswert
nicht lesenswert
ich stelle hier als Anfänger eine Frage von der ich dachte, dass sie 
hier jeder beantworten kann. Dem scheint nicht so zu sein..

von pegel (Gast)


Bewertung
0 lesenswert
nicht 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.

von pegel (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Nicht so ungeduldig bitte, es soll Leute geben die schon schlafen!

von pegel (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Das eins hinter Prescaler bitte weg denken.

von kunsjk (Gast)


Bewertung
0 lesenswert
nicht lesenswert
okay vielen Dank

von pegel (Gast)


Bewertung
0 lesenswert
nicht lesenswert
pegel schrieb:
> Mit Period=10-1 zählst du 10 Perioden bis zum Zähler Neustart.

Soll heissen:

Mit Period=10-1 zählst du 10 mal Puls bis zum Zähler Neustart.

Am Ende hast du dann mit Pulse=1 einen 1µs langen PWM Pulsausgang.

Ist wohl wirklich schon spät.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.