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
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.
@ 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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.