Wenn es 10 Servos sind und Srv_tm auf ein Array von 10 dimensioniert ist, dann wird hier:
Code:
    for (uint8_t n = 1; n <= 10; n++)
    {
      Srv_tm [n]  = Srv_tm [n] + s[n];
    }
die Arraygrenze überschritten und eine andere Variable überschrieben.
Gleiches gilt für s[i] in der entsprechenden Initialisierungsschleife.
Das <= muss jeweils zu einem < werden.