Hallo TCCR1A = (0<<PWM11|1<<PWM10); // 8 Bit PWM Mode TCCR1A = (1<<COM1A0); // nicht invertierender PWM Mode up = high TCCR1B = ((1<<CS11)|(1<<CS10)); // ck = Xtal/8 TIMSK = (1<<TOIE1); // enable timer interrupt sei(); Warum hat meine Einstellungen im TCCR1A keine Wirkung? Egal ob ich 8,9 oder 10 Bit wähle. Die Impulsdauer hat immer die gleiche Länge (viel zu lang). Die Einstellungen des Prescalers funktionieren gut.
TCCR1A = (0<<PWM11|1<<PWM10); // 8 Bit PWM Mode TCCR1A = (1<<COM1A0); // nicht invertierender PWM Mode up = mit der 2. Anweisung überschreibst du die 1. Entweder gleich in einer Zeile oder in der 2.Zeile: TCCR1A |= (1<<COM1A0); ob es so sonst stimmt, habe ich nicht überprüft.
0<<PWM11 hat keine Wirkung. Ansonsten lies mal im C-Kurs unter Artikel oder in der Wiki nach.
@crazy horse Ich hatte den gedanken kurz im Kopf und hab Ihn leider nicht weiter verfolgt. Klingt aber extrem logisch!! @ Christian das mit dem 0<<PWM11 war nur zum testen, da ich oft experimentiert habe und die werte öffters geändert habe. Danke
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.