Forum: Compiler & IDEs PWM 90S2313


von Herbert Weiss (Gast)


Lesenswert?

Hallo,


ist es möglich die Frequenz bei der PWM - Ausgabe mit Timer 1
zu variieren.
Zum Beispiel bei ein CPU Takt von 4 MHZ und einer PWM Auflösung
von 8bit bei Clk/1 beträgt die Frequenz ca. 7.8xx Khz.
Ich möchte aber ca. 3.5khz einstellen.
Init Code fuer PWM:
outp(0x81, TCCR1A);    // 8 Bit PWM waehlen
outp(0x00, OCR1H);    // PWM Anfangswert initalisieren
outp(0x00, OCR1L);
outp(0x01, TCCR1B);    // T1 Eingangsteiler = 1 T1 Start

Grüße
Herbert

von Florian Pfanner (Gast)


Lesenswert?

soweit ich weis, kannst du das nur im Ramen der Vorteiler-bits des
Timers. Also Timertakt einstellen.

Gruß, Florian

von Andreas Wiese (Gast)


Lesenswert?

Hallo,

Florian hat recht, beim 90s2313 geht es wohl nicht anders als über die
Auflösung (9bit hat halbe Frequenz von 8 bit) und über die
Timer-Vorteiler.
Neuere AVR's, z.B. der Tiny26 hat neben zwei unabhängigen PWM's mit
einem Timer noch zusätzlich die Möglichkeit über ein drittes
Compare-Register die Timerperiode einzustellen.
Allerdings hat der Tiny 26 generell nur 8 bit.

Gruß
Andreas

von Florian Pfanner (Gast)


Lesenswert?

Was ich auch schon gemacht habe, ist einfach ein anderes Quarz, so dass
die Frequenz ungefär dann passt.

Gruß, Florian

von Herbert Weiss (Gast)


Lesenswert?

Danke an Florian und Andreas, für die Infos.

Habe jetzt die PWM Auflösung auf 9 bit gestellt,
so komme ich meiner gewünschen Frequenz von ca. 3.5Khz
schon näher.
Evtl. besorge ich mir noch einen Tiny 26 so das dann
die Timerperiode eingestellt werden kann.

Danke und Gruß
Herbert

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.