ATMEGA168 und CTC-Timer

#1112075
Lesenswert?

Hallo Community,

ich baue gerade einen kleinen Timer für meinen Belichter und will einen 
Piezo am ATMEGA168 anschließen. Dazu will ich den Timer2 im CTC-Mode 
verwenden.

Init:
1
TCCR2A = (1<<COM1A0); // trigger pin
2
TCCR2B = (1<<WGM12) | (1<<CS12); // CTC-Mode / prescaler: 256
3

4
OCR2A = 128; // compare

Am Pin OC2A habe ich nun konstante 488,2Hz. µC läuft mit 16MHz und eine 
Änderung des CompareMatch Wertes OCR2A, bewirkt überhaupt keine Änderung 
der Ausgangsfrequenz. Woran liegt es? Ist überhaupt CTC mit Timer2 
möglich?

Gruß
#1112214
Lesenswert?

Also, habe mal im Datenblatt gestöbert und angepasst.
1
TCCR2A = (1<<COM2A0); // toggle pin
2
TCCR2B = (1<<WGM22) | (1<<CS22) | (1<<CS21); // CTC / 256
3
OCR2A = 128;

Macht keinen Unterschied! Die Frequenz ist nun bei 122Hz "festgefroren" 
und lässt sich nicht über OCR2A verändern. Was kann sonst nicht stimmen?

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