Hallo,
das Servo muss springen. Die Schleife fängt immer bei 0 an!
for(int l=0; l!=winkel; l++)
Du musst das schon Richtungs- und Positionsabhängig programmieren.
ungleich Abfrage macht man eigentlich auch nicht. größer, kleiner, größer gleich, kleiner gleich sind besser.
Der Bereich 500-2500µs ist mir auch zu weit.