Hallo, ich habe eine Frage zu den Compare Registern (Timer1) vom 8515. Es ist doch richtig, dass sich die Ausgänge OC1A und OC1B gleich verhalten, oder? Beide besitzen ein eigenes Compare Register welches mit dem Timer1-Register verglichen werden kann um dann ggf. einen Interrupt zu erzeugen. In der Praxis funktioniert dass mit dem OC1A wunderbar, nur der OC1B funktioniert nicht. Habe hier einmal die Einstellungen mit denen ich den Timer initialisiere: // zunaechst mal alle Register deaktivieren! TIMSK = TCCR1A = TCCR1B = 0x00; SREG = 0x00; SREG = 0x80; // Global Interrupt Enable TIMSK = BV(OCIE1B); // CompareB Match Interrupt Eneble TCCR1A = BV(COM1B0); // Output toggle OCR1B = 200;//Compare Register beschreiben TCCR1B = BV(CTC1)|BV(CS12); // Timer1=0, wenn TCNT1=OCR1B ; CPU-Takt 7.3728MHz Später möchte ich dann in dieser Routine den Wert in meinem Compare Register ändern: SIGNAL(SIG_OUTPUT_COMPARE1B) { //irgendetwas tun } Aber leider komme ich noch nicht einmal so weit eine Frequenz auszugeben. Wäre nett wenn mir jmd. helfen könnte. Gruß, Andi
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.