Petit jeu avec Stepper.cpp, bonus

Ce type de moteur est commandé avec 4 pas différents comme le montre la table de 4 valeurs:

 * Step C0 C1 C2 C3
 *    1  1  0  1  0
 *    2  0  1  1  0
 *    3  0  1  0  1
 *    4  1  0  0  1

ou

 * Step C0 C1
 *    1  0  1
 *    2  1  1
 *    3  1  0
 *    4  0  0

Il y a effectivement 4 pas N° de 1 à 4 (remarque: dans le code les pas sont numérotés 0 à 3)

Quand on arrête le moteur, il s'arrête sur n'importe quel pas, et à la la mise sous tension, on va démarrer toujours sur le même pas car le logiciel n'a aucun moyen de savoir quel est le pas qu'il y avait lors de l'arrêt (en plus il pourrait avoir tourné "à la main"). En conséquence à la mise sous tension, le moteur peut se "caler" sur le pas de démarrage et avancer, reculer ou ne pas bouger. Dans le cas de la vidéo, c'est un ou deux pas en avant, on ne voit pas bien.

Mais une fois sous tension, le logiciel fait un pas en arrière avant les pas en avant. Dans la bibliothèque que j'ai écrite, à la mise sous tension, le moteur peut avancer ou reculer, mais le premier vrai pas se fait dans le bon sens. Ici c'est le premier vrai pas qui va dans le mauvais sens.

En gros, ne pas tenir compte du premier pas apparent qui positionne le moteur. Si c'était cela, je n'aurais pas prétendu que pour moi, il y a un bug dans le programme.