Hallo Moritz,
> hast du bei 10 Mhz 50 Takte bis zum nächsten Interrupt
der Quarz und der Vorteiler bestimmen die Zeitbasis und damit die Genauigkeit. Warum sollte man dann wieder eine 2. Zeitbasis erzeugen? Das treibt nur unnötig die Genauigkeit in den Keller.
10 MHz Takt, Prescale = 1 -> Zeitbasis der Timers = 0.1µs
8MHz, Prescale=8 -> 1µs, usw.
Ein 8bit Zähler läuft alle 256 Takte über (8Bit Zähler) und jede zu erzeugende Zeit lässt sich als x-mal 256 Takte + y Takte darstellen. Man Zählt einfach die Anzahl der Timerüberläufe und hängt die restlichen Takte dran.
Egal welche Zeit erzeugt werden soll, die Genauigkeit ist immer gleich.
Alternativ nimmt man den 16bit Timer. Dann hat man zwischen zwei Überläufen 2^16 Takte Zeit und kann auch das "Anhängen" der restlichen Takte elegant die AVR-Hardware machen lassen.
Ciao,
Werner
Lesezeichen