Gast
#1752560
Hallo Ich fange gerade an mit ATTinys zu arbeiten. Ich verwende einen ATTiny461. Mit Timer0 will ich eine feste Zykluszeit vorgeben. Dieser läuft im 16Bit Modus. Timer0 soll bei compare match einen IRQ auslösen. Das ganze soll möglichst genau werden. An und für sich kein Problem. Einfach den entsprechenden Wert ins compare Register laden. Wenn ich das Handbuch richtig verstanden habe, gibts für 16Bit leider keinen CTC Modus. Ist das wirklich so? Wenn ja, wäre es keine gute Idee, den Timer am Anfang der Interruptfunktion auf 0 zu setzen, da sich dann die Interruptlatenzen bei jedem Durchlauf addieren und der Fehler somit immer größer wird. Um den Fehler klein zu halten, müsste vom aktuellen Timerwert der Comparewert sowie die Verarbeitungszeit X abgezogen werden. Damit sollte der Offset kompensiert sein. Jetzt meine Frage: Muss der Umweg wirklich sein oder geht es auch einfacher? Viele Grüße, Tilo