PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PWM Frequenz berechnen



Blue72
02.12.2008, 19:51
Hi Leute,

eigentlich dachte ich, die PWM Frequenz berechnet sich einfach aus der Frequenz, mit welcher der ATMega läuft geteilt durch den Prescaler,
also z.B. 8MHz / 1024 = 7812,5 kHZ.

Fernerhin dachte ich, das die Auflösung (8,9 oder 10bit) nur die Abstufungen des ein/aus Verhältnisses darstellen (256,512 oder 1024 Schritte). Zugegeben, ich mach erst seit kurzem mit ATMEGAs rum, aber das verwirrt mich jetzt ein wenig.

Beim rumsuchen bin ich dann auf die folgende Formel gestoßen:

Ausgangsfrequenz = (Quarzfrequenz/Prescale ) /(Timerauflösung*2)

Das hiesse dann das meine Ausgangsfrequenz beim obigen Beispiel ja dann nicht 7812,5kHz sondern 3,81Hz beträgt ?

Einen Oscar habe ich leider nicht zur Verfügung, sonst könnte ich ja einfach mal nachsehen und müsste mich nicht blamieren ;)

Gruß
Jens

Borki90
02.12.2008, 20:15
Hi Blue72

Ja, das hast du korrekt berechnet. Bei einer Auflösung von 10Bit hast du eine Ausgangsfrequenz von 3.815Hz
Dies ergibt sich daraus, dass bei 10Bit Auflösung mit jedem ankommenden Puls (nach dem Prescaler) der Timer auf 1024 hinauf und wieder hinunter zählt.
Dies lässt sich herforragend auf dem Bild aus dem RN-Wiki erkennen.
(Und ist dort um einiges besser erklärt, als ich es gerade versucht hatte..)

https://www.roboternetz.de/wissen/index.php/Bild:PWM.png
https://www.roboternetz.de/wissen/index.php/Bild:PWM.png

mfg Borki90

Blue72
02.12.2008, 20:50
Hi Borki,

vielen Dank.

Gruß
Jens