Hallo

was bedeutet ++servopos bzw. --servopos
VOR der Überprüfung der Abbruchbedingung in der while-Funktion wird der Wert von servopos um eins erhöht bzw. verringert. servopos++/servopos-- würde den Wert NACH dem Vergleich ändern.

das programm funktioniert einwandfrei
Prima. btw: Wenn du while() durch servopos--; bzw. servopos++; ersetzt, fährt das Servo nicht zu den Endpositionen sondern macht nur einen Step pro IR-Kommando.

Gruß

mic