PWM Frequenz Verständnisfrage

Gast #5176707
Lesenswert?

Hallo Leute,

ich beschäftige mich mittlerweile mit PWM bei AVR und habe eine Frage zu 
der Frequenz. Ich finde leider nicht viele Infos dazu im Internet, 
obwohl es über PWM viele gute Tutorials gibt.

Wenn
- F_CPU bei 16MHz liegt
- der Prescaller 1
- der Timer0 von 0 bis 255 zählt und wieder bis 0 zurück (also 512 
Schritte)
dann ergibt sich eine Frequenz von 31250Hz für PWM.

Ist meine Rechnung korrekt?

Gruß
Stefan
Gast #5180210
Lesenswert?

Du teilst den CPU-Takt durch den Teiler, dann kennst du die Frequenz 
deines Timers. Der Kehrwert davon und du weißt, wie lange der Timer für 
+1 seines Zählers braucht. Dann multiplizierst du das ganze mit deinen 
maximalen Zählwert und du weißt die Zeit für einen Takt. Den Kehrwert 
davon = deine PWM Frequenz.

Die Formel von A. stimmt schon. Bei F_CPU = 8.000.000 und einen max. 
Zählwert von 65536 (0-65535) und einen Teiler von 8 ergibt das:

8.000.000 : 8 : 65536 = 15HZ

Ein bisschen wenig. Bei Einem Teiler von 1, wäre die Frequenz: 8.000.000 
/ 65536 = 122Hz.

Dann lassen wir den Timer mal nur bis 12Bit zählen:
8.000.000 / 4096 = 2kHz
#5180392
Lesenswert?

Nils H. schrieb:
> Die Formel von A. stimmt schon. Bei F_CPU = 8.000.000 und einen max.
> Zählwert von 65536 (0-65535) und einen Teiler von 8 ergibt das

Nur war das nicht gefragt. Der TE hat zwar (wohl unwissentlich [1]) 
keine Angaben zum verwendeten Timer, PWM-Modus und TOP-Wert gemacht. 
Aber aus dem Kontext geht ziemlich klar hervor, daß es ihm um eine 
phasenkorrekte PWM mit einem 8-Bit Zähler ohne Zählumfangsbegrenzung 
geht.

[1] https://de.wikipedia.org/wiki/Hanlon%E2%80%99s_Razor

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren