Création compte tour avec TB6612FNG et x27168

Non, cette ligne fais sauter un pas et le moteur ne tourne plus. Tu dois toujours dérouler les 4 pas de la séquence et dans le bon ordre pour faire tourner le moteur.
Si tu veux aller plus vite il faut faire 2 pas de la séquence l'un après l'autre (avec un petit delay()) pour laisser au moteur le temps d'avancer.

Si j'ai bien compris, ton moteur fait 600 pas pour parcourir 315°. Donc, il faut dérouler les pas assez vite pour faire bouger l'aiguille. Tous les delay() que tu mets dans ton code ralentissent le mouvement.

Pour accélérer le code, il faut essayer de le simplifier au maximum.
Par exemple, la multiplication sur des long doit prendre du temps et tu pourrais certainement revoir ton algorithme pour réduire les calculs.
Par exemple, tu ajoutes LEFT_OFFSET dans le map lors du calcul de cycleMax et tu le soustrait dans le calcul de calc. Il y a moyen d'éviter ça.

Au lieu de recalculer la somme pour la moyenne à chaque itération tu peux faire

  long sum = 0; // mettre cette variable en global ou la déclarer static

  // lire et stocker l’échantillon
  int sample= analogRead(SIGNAL_PIN);
  sum = sum - samples[sampleIndex] + sample;
  samples[sampleIndex] = sample;
  sampleIndex = (sampleIndex + 1) % NUM_SAMPLES;
  int avgSigVal = sum / NUM_SAMPLES;

Cette solution est plus rapide car elle ne refait pas la somme de tous les échantillons qui sont dans le buffer.
Ceci dit, dans ton cas tu n'as que 2 échantillons donc tu pourrais sans doute faire différemment.