Etape 5: Programmation de l’ARDUINO
Pour le Script de l’Arduino, assurez-vous que vous avez obtenu les bibliothèques suivantes :
- MIDI.h
- STEPPER.h
Avant de regarder le code, quel est le point du script ?
Il utilise une technique appelée rappels de MIDI. Il y a des exemples documentés qui viennent avec la bibliothèque, en quelques mots, un rappel de midi signifie qu’il y a dans le void loop() uniquement cette fonction pour examiner la broche Rx et voir s’il y a une sorte de données MIDI en. Rien de plus.
Qui rend le script comme une latence faible que possible, parce qu’il n’y a pas d’autres trucs dans le void loop() qui prennent le temps/puissance de traitement.
S’il y a un message midi venant, il appelle le gestionnaire midi pour identifier le message.
Dans notre script nous recherchons des messages MIDI #CC sur le canal MIDI 1 et #CC sur numéro 20 et 21.
Un message MIDI #CC peut être une valeur comprise entre 0-127, et nous utilisons le numéro 20 pour le tournage et numéro 21 pour conduire le chariot.
Je ne peux pas le script capture d’écran, et lorsque le collant dans le texte il ne me montre pas code formaté, alors je vais screenshot en tuiles. Il suffit de regarder les numéros sur le côté gauche pour les remettre ensemble.
- Ligne 1 -24
Dans cette partie, je définis les sorties moteurs et un compteur par moteur, les deux bibliothèques obtenez également inclus et défini les Steppers. 4096 étapes est une révolution.
Soyez prudent sur le moteur de PINS, au lieu de 1_2_3_4 système de brochage c’est : 1_3_2_4
Si les broches dans notre script sont 9_11_10_12 et 5_7_6_8.
- LIGNE 24-80
Comme nous utilisons des rappels de midi, cette partie est où les choses se rend en ce que vous voulez faire si une certaine entrée MIDI obtient détectée.
En ligne 28 il regarde si le message entrant de MIDI est envoyé sur le canal MIDI 1
En ligne 30 qu'il regarde si le nombre de MIDI #CC est 20, et si son #CC20 sur il tourne le moteur pour 20 étapes selon if son supérieur ou inférieur puis le compteur.
En ligne 52, il fait la même chose pour #CC21 MIDI.
- LIGNE 81-116
La dernière partie est void setup() et void loop()
Nous les broches AmotA etc. aux sorties et régler la vitesse des steppers.
Comme indiqué plus tôt le void loop() comprend uniquement le MIDI.read().
J’ai ajouté une tige appelée « NIP » le 13 broches (broches de la LED) pour voir si les messages MIDI sont à venir dans, mais vous n’avez pas besoin pour s’exécuter.