Forum: Mikrocontroller und Digitale Elektronik 2mal verschiedene CTC an Timer3


von Josef K. (zumlin)


Lesenswert?

Hallo,

ich habe mal eine Frage. Ich will 2 PWMs an OC3A und OC3B mit 
verschiedenen Frequenzen ausgeben. Der µC ist ein AT90CAN128. Solange 
ich nur eine PWM ausgeben will, funktioniert das ganz gut. Ich stelle 
den Timer3 auf Mode3, also CTC, und sobald der Timer auf OCR3A 
hochgezählt hat, toggelt er mir den Ausgang.
Nun wollte ich das gleiche mit OC3B machen und habe diesen ebenfalls auf 
Mode3 eingestellt und OCR3B mit einen Wert versehen. OCR3B ist dabei 
kleiner als OCR3A.
Jetzt dachte ich, dass die PWM an OC3B mit höherer Frequenz ausgegeben 
wird. Tut Sie aber nicht. Sie richtet sich ebenfalls nach OCR3A und 
nicht nacht OCR3B.
Wo liegt der Denkfehler?

Außerdem ist mir aufgefallen, dass Schritte zwischen zwei 
aufeinanderfolgenden Frequenzen immer größer werden, je größer OCR3n 
wird. Die Äuflösung des Ahusgangs scheint also nicht linear. Gibt es 
eine bessere Lösung um eine PWM an einem Ausgang anzulegen, bei dem die 
Auflösung über den ganzen Frequenzbereich immer gleich bleibt?

Auch das Toggeln eines Ausgages habe ich schon versucht, aber die 
Flanken waren beim Sprüng von 5V auf 0V schon sehr unschön...

PS: Sorry für den Doppelpost

von Christian H. (netzwanze) Benutzerseite


Lesenswert?

Die Frequenz bestimmst Du mit der Timer-Taktfrequenz und dem TOP-Wert 
des Zählers. OCA und OCB kannst Du nur zu unterschiedlichen Zeiten 
(Zählerstände) ein bzw ausschalten lassen. Die Frequenz wird dadurch 
nicht beeinflusst, nur das Puls-Pausen-Verhältnis.

von Falk B. (falk)


Lesenswert?

@  Josef Kkk (zumlin)

>Wo liegt der Denkfehler?

Mit einem Timer können die PWMs immer nur die gleiche Frequenz haben.

MFG
Falk

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.