Hallo,
nachdem ich das mitm dem CTC mittlerweile einigermassen im Griff zu haben glaubte, stehe ich nun vor dem Problem, dass meine errechnete Frequenz nicht mit der tatsächlichen übereinstimmt.
Hier wieder der Code:
Code:
#include <avr/io.h> 
#include <avr/interrupt.h> 
#include <avr/signal.h> 

volatile uint8_t count = 0; 
volatile uint8_t serv1 = 0;
volatile uint8_t serv2 = 0;
volatile uint8_t pos = 0;


int main(void) 
{ 
 TCCR2 = (1<<COM20) | (1<<WGM21) | (1<<CS20);
 OCR2 = 221;
 DDRB = (1<<PB3);
 while(1) {};

}
Mit dem Digitalmultimeter gemessen kommen da 93khz anstatt von 36khz heraus - Wo liegt der Fehler? F_CPU sind 16MHZ.

Gruss
Spurius