Hai centrato il punto: con quel ciclo "while" aspetto il sincronismo, ovvero resto nel loop finché il numero che viene diviso per gli impulsi encoder non è 0.
Hai modificato correttamente anche se, per renderlo "portabile", dovresti dividere per la variabile così:
Codice: Seleziona tutto
while (((absolute_encoder_steps % one_turn_mandrel_steps) != 0) & (stay))Codice: Seleziona tutto
absolute_encoder_steps = one_turn_mandrel_steps/2;