Ich habs bei meiner Servo-Ansteuerung so gemacht das ich den timer nur da auslöse wenn ich ihn brauche -> Tabellen mit Zeiten und servo-nummer der größe nach sortieren und immer nach der differenz zwischen 2 Servos den timer auslösen und nach dem letzten warten bis die insgesamt 20ms vorbei sind.
z.B.:
Code:
servo1: 1,5ms
servo2: 2ms
servo3: 1ms
timer (beim ersten mal) = 1ms;
timer (beim zweiten mal) = 0,5ms;
...
timer (am ende) = 20ms-letzerServo
Ich hoffe du verstehst was ich meine 
EDIT: ich hab vergessen zu sagen das alle servo-pins am anfang auf high gesetzt werden und dann nach ablauf des timers die Servos deren Zeit "abgelaufen" ist auf low gesetzt werden.
LG
Lesezeichen