Forum: Mikrocontroller und Digitale Elektronik PWM Frage


von Andi Lindl (Gast)


Lesenswert?

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

von crazy horse (Gast)


Lesenswert?

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

von Andi Lindl (Gast)


Lesenswert?

Verstehe!
Und die Pausenzeit müsste ich dann mit den Reg. OCR1XX einstellen 
können, oder ?

von crazy horse (Gast)


Lesenswert?

so isses. Zu beachten wäre noch mode select (inverted oder 
non-inverted), steht aber (natürlich) alles im Datenblatt.

von Andi Lindl (Gast)


Lesenswert?

Natürlich.... :-)))

DANKE für die Hilfe!!!

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.