Ich habe einen ATMEGA32@16MHz der Timer läuft mit dem Prozessortakt.

Ich habe einen Stepper-Motor mit 10000 Steps/Vollumdrehung.
Im Vollgasmode will ich mit ca. 80kHz, also 8 Umdrehungen/Sekunde fahren. (Reserve: besser bis 100kHz)
Die Beschleunigungs Rampe läuft auch 100pro
Das Problem ist es:
Weil ich mit dem Timer am Limit arbeite habe ich ein Rucken in der Rampe:
Wenn der Timer Startwert von 0 an hochgezählt wird, so läuft der Motor
am langsamsten, klar. Ich habe sinusförmige, lineare und e-Funktions Rampen ausprobiert. -ABER- wenn der Timer Startwert von 253 auf 254 erhöht wird, so ist das ein gewaltiger Sprung. Also muss ich insgesamt mit den variabelen Timer Startwertten (Rampenwerten) runter, dann komme ich abe nicht mehr auf 80kHz.

Die Idee ist es zwei 8-Bit Timer um exakt 90 Grad phasenverschoben laufen zu lassen um mit der Frequenz wieder höher zu kommen.
Hier ist das Problem: Woher weiß ich, dass ich zwischen zwei Takten (besser gesagt: genau zwischen den Interrupt-Routinen) bin?
Oder gibt es eine andere Möglichkeit mit nur einem Timer einen Zwischen-Impuls zu generieren, der genau in der Mitte liegt, das Puls-Pausen-Verhältnis soll konstant sein.