PWM (Pulsweitenmodulation) Bestimmung der Periodendauer mittels ICR1 (Input Capture Register)

Die Periodendauer richtet sich danach, welche Periodendauer das Gerät, an das Sie das PWM liefern werden, akzeptiert. In diesem Fall wird das PWM an ein Hobby-Servo gesendet, das ein 50-Hz-Signal akzeptiert. Die Periodendauer für 50 Hz beträgt 20 ms. Um die Periodendauer zu bestimmen: 1 / 50 Hz = 0,02 Sekunden oder 2 Zentisekunden oder 20 Millisekunden. Zunächst kann die Periodendauer vom Vorhandensein eines Prescalers abhängen. Um festzustellen, ob ein Prescaler mit dem 16-Bit-Timer (der bis zu 65535 zählen kann) benötigt wird, verwenden Sie die Frequenz des AVR, die 1.000.000 Hz (1 MHz - Megahertz) beträgt, und teilen Sie diese durch die erforderliche Frequenz von 50 Hz. 1.000.000 Hz / 50 Hz = 20.000. Der 16-Bit-Timer kann bis zu 20.000 zählen, daher muss der ICR1 den Wert 19.999 haben, da er ab 0 indiziert ist. Was ist, wenn die Taktfrequenz bei 8 MHz liegt? Dann würde die 50 Hz eine Zählung von 8.000.000 Hz / 50 Hz = 160.000 erfordern. Das ist zu hoch für die 16-Bit-Zählung, da sie nur 65535 beträgt. Für dieses Szenario wäre ein Prescaler von 4 oder 8 erforderlich.



Zurück zum Blog

Hinterlasse einen Kommentar

Bitte beachte, dass Kommentare vor der Veröffentlichung freigegeben werden müssen.