Hallo, Ich spiele mich gerade mit dem PWM beim Atmel 8535, Frage, wie kann ich den Controller sagen (welche Werte und in welches Register?), dass die Frequenz am Ausgang ca.160hz betragen soll. (Chip Clock 4Mhz) und das Puls/Pausen Verhältnis ca.60%High u.40%Low sein soll ??? Hier ein Test Prog. .include "8535def.inc" ldi r16, 33 out TCCR1A, r16 ldi r16, 5 out TCCR1B, r16 ldi r16, 5 out OCR1BH, r16 ldi r16, 255 out OCR1BL, r16
wenn du Hardware-PWM benutzt, bist du nicht frei bei der Wahl der Frequenz, ist abhängig von Auflösung (8,9 oder 10bit), Vorteiler und Quarzfrequenz. Ohne Vorteiler: 8bit-PWM: Quarzfrequenz/510 9bit-PWM: Quarzfrequenz/1022 10bit-PWM: Quarzfrequenz/2046 Arbeitest du mit Vorteilern, ist die PWM-Frequenz nochmal durch den Vorteilerwert zu dividieren. Um bei deinem Beispiel (4MHz) zu bleiben: 8bit: 7,8KHz oder 980Hz,122Hz,30Hz,8Hz 9bit: 3,9Khz oder 490Hz, 61Hz, 15Hz, 4Hz 10bit: 1,9KHz oder 244Hz, 30Hz,8Hz, 2Hz
Verstehe! Und die Pausenzeit müsste ich dann mit den Reg. OCR1XX einstellen können, oder ?
so isses. Zu beachten wäre noch mode select (inverted oder non-inverted), steht aber (natürlich) alles im Datenblatt.
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.