Hallo, ich möchte an einem 89C51CC03 die PWM Ausgänge nutzen. Die Taktfrequenz des Controllers beträgt 12MHz. Zur PWM- Frequenz wird durch den PCA- Couter/Timer bestimmt. Durch was die Inkrementierung des PCA erfolgt kann durch Register festgelegt werden. Wenn nun „FPca/6“ ausgewählt wird, wie groß ist dann die PWM- Frequenz? Ist folgende Überlegung richtig: Bei einer Taktfrequenz von 12000000Hz wird der PCA- Counter mit 12000000Hz 2 6 = 1000000Hz hoch gezählt. Mit dem internen PCA 8-Bit Counter ergibt sich somit eine PWM- Frequenz von 3,9kHz. Bestimmt kann mir jemand von euch sagen, ob diese Überlegung stimmt. Mein Ziel war eigentlich eine PWM- Frequenz von ca. 200-300Hz bei einer 8 Bit Duty-Cycle- Auflösung. Gibt es eine Möglichkeit die Frequenz auf diese Werte zu reduzieren? Die Möglichkeit einen externen Takt an Pin P1.2 anzuschließen ist mir bekannt. Leider verliere ich durch diese Variante einen weiteren AD-Kanal, weshalb ich darauf verzichten möchte. Gruß Klaus
Aus dem Datenblatt: Its clock input can be programmed to count any of the following signals: • PCA clock frequency/6 (see “clock” section) • PCA clock frequency/2 • Timer 0 overflow • External input on ECI (P1.2) Wenn die beiden ersten zu hoch sind, dann den Timer 0 auf 19µs einstellen. Damit hast Du eine PWM-Periodendauer von 19µs * 256 = 4,864ms => f=205Hz.
Wie hoch der PCA-Takt ist, bestimmt noch das CKCON0-Register. Das 5.Bit PCAX2 schaltet den Takt auf fosz/12 oder fosz/6. Damit ist bei 12MHz Takt fpca entweder 1MHz oder 2MHz, fpca/6 also 166kHz oder 333kHz. PWM-Frequenz ist damit 650Hz oder 1,3kHz...
Hallo Bernhard, herzlichen Dank für deine Antwort. Verstehe ich das richtig, wenn ich den PCAX2 ändere muss ich auch das Bit X2 ändern. Dadurch würden sich das Verhalten aller anderen Timer ändern? Gruß Klaus
Schau Dir den Abschnitt Clock im Datenblatt an. Die Taktquellen sind beim CC03 individuell konfigurierbar.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.