Wegen der Rechenzeit: ich hatte mir da mal geholfen, indem ich ganz zu Anfang der Schleife einen Timer auf 0 gesetzt habe und am Ende der Schleife dann den Timerwert auf einem Display ausgeben lassen. Dabei muss man darauf achten, dass der Timer so eingestellt ist, dass er nicht während der Schleife schon überläuft, sonst bekommt man unbrauchbare Werte. Über Taktfrequenz und Prescaler kann man dann auf die tatsächliche Zeit schließen. Natürlich kannst du auch etwas reinbauen, was dir gleich den Timerwert in die Rechenzeit umrechnet, zwecks Anschaulichkeit. Ich würd dir aber auch empfehlen, auf Integer-Rechnung umzusteigen, da das sehr viel schneller ist. Dafür brauchst nur die Zahlen, mit denen gerechnet wird, in einen brauchbaren Bereich transformieren. Der gemessene Winkel und die PWM sind ja meist eh Integer-Werte. Musst nur aufpassen bei zB. Multiplikation, da 8bit*8bit einen 16bit-Wert ergibt.