Goblin
05.07.2006, 14:32
Tagchen!
Wie bring ich nen 16-Bit-Timer dazu, nur alle 20 Millisekunden eine ISR aufzurufen? Ohne eine Schleife zu schreiben, die hochzählt oder sowas. Ich will ein Software-PWM mit geringer Periodendauer schreiben, um damit Magnetventile zu steuern. Gleichzeitig sollen die 4 PWM-Werte per RS232 eingelesen werden, weswegen ich mir die aktive Zählschleife nicht erlauben kann. Also, gibts ne Möglichkeit, den Timer soweit zu verlangsamen? Wenn das RS232 nicht wäre könnte man ja evtl an der Taktfrequenz rumpfuschen, also bei 1MHz-Quarz 100 MHz angeben oder so.
Eine Art Postscaler wäre eine Lösung, aber gibts das beim AVR? (AtMega8)
Wie bring ich nen 16-Bit-Timer dazu, nur alle 20 Millisekunden eine ISR aufzurufen? Ohne eine Schleife zu schreiben, die hochzählt oder sowas. Ich will ein Software-PWM mit geringer Periodendauer schreiben, um damit Magnetventile zu steuern. Gleichzeitig sollen die 4 PWM-Werte per RS232 eingelesen werden, weswegen ich mir die aktive Zählschleife nicht erlauben kann. Also, gibts ne Möglichkeit, den Timer soweit zu verlangsamen? Wenn das RS232 nicht wäre könnte man ja evtl an der Taktfrequenz rumpfuschen, also bei 1MHz-Quarz 100 MHz angeben oder so.
Eine Art Postscaler wäre eine Lösung, aber gibts das beim AVR? (AtMega8)