Timer1 Duty Cycle auf 0 setzen

Gast #3625075
Lesenswert?

Hallo zusammen,

ich möchte bei meinem Atmega32 den Duty Cycle von Timer1 auf 0 setzen. 
Wenn ich das jedoch mit
1
OCR1A = 0;
2
OCR1B = 0;

mache, ist das Signal für 260µs low, worauf immer ein Spike auf High 
(ca. 1µs) folgt. Danach ist das Signal wieder für 260µs low.

Die Initialisierung ist wie folgt:
1
TCCR1A |= (1<<WGM10) | (1<<WGM12) | (1<<COM1A1) | (1<<COM1B1);
2
TCCR1B |= (1<<WGM12) | (1<<CS10);

Laut Datenblatt ist das ja Folgendes:
Clear OC1A/OC1B on compare match, set
OC1A/OC1B at BOTTOM

Wenn ich zusätzlich COM1A0 und COM1B0 auf 1 setze, habe ich das genau 
invertierte Verhalten von oben, was ja auch klar ist.

Klar ist für mich nur nicht, wie ich bei OCR1X = 0 das Signal komplett 
auf 0 lassen kann.

Hat jemand hierfür nen Vorschlag?

Vielen Dank im Voraus!

Gruß DM

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren