Die Datenrichtung muss manuel gesetzt werden.
Dazu ist das Einstellen auf ein KHz garnicht so schwierig.
Bei 2 MHz braucht man einen Teiler von 8 bei 4 MHz von 16 usw. Dabei ist der Puls aber immer etwas länger, jedoch noch im Toleranzbreich. Wenn absolute Präzision gefordert ist, sollte man den Timer extern triggern
VERGLEICHSREGISTER = 255; //...1ms warten
Wenn der Timer korrekt eingestellt ist, dann dauert ein Durchlauf von 0-255 1ms. Der Puls wird in einer zweigeteielten ISR erzeugt um eine hohe Genauigkeit zu erreichen. Im ersten Teil wird ein 1ms "gewartet", der Pin wird auf High gesetzt. Im zweiten Teil der ISR wird der Drehwinkel bestimmt, da dort die Zeitspanne "gewartet" wird, durch die der geforderte Drehwinkel erreicht wird.
Gruß Jannis