X-Git-Url: http://cloudbase.mooo.com/gitweb/irmp.git/blobdiff_plain/83b279abfd3c6d7efc7764287c99f078b5843109..0f700c8ea4b0e9729805828c4fab5ab0fe2b6443:/main.c diff --git a/main.c b/main.c index 28bbe14..4e666da 100644 --- a/main.c +++ b/main.c @@ -3,7 +3,7 @@ * * Copyright (c) 2009-2011 Frank Meyer - frank(at)fli4l.de * - * $Id: main.c,v 1.11 2011/09/20 10:45:28 fm Exp $ + * $Id: main.c,v 1.12 2012/02/13 10:59:07 fm Exp $ * * ATMEGA88 @ 8 MHz * @@ -33,8 +33,15 @@ void timer1_init (void) { #if defined (__AVR_ATtiny45__) || defined (__AVR_ATtiny85__) // ATtiny45 / ATtiny85: + +#if F_CPU >= 16000000L + OCR1C = (F_CPU / F_INTERRUPTS / 8) - 1; // compare value: 1/15000 of CPU frequency, presc = 8 + TCCR1 = (1 << CTC1) | (1 << CS12); // switch CTC Mode on, set prescaler to 8 +#else OCR1C = (F_CPU / F_INTERRUPTS / 4) - 1; // compare value: 1/15000 of CPU frequency, presc = 4 TCCR1 = (1 << CTC1) | (1 << CS11) | (1 << CS10); // switch CTC Mode on, set prescaler to 4 +#endif + #else // ATmegaXX: OCR1A = (F_CPU / F_INTERRUPTS) - 1; // compare value: 1/15000 of CPU frequency TCCR1B = (1 << WGM12) | (1 << CS10); // switch CTC Mode on, set prescaler to 1