Étape 3: Arduino
La fonction setup() est appelée au démarrage d’une esquisse. Nous l’utilisons pour initialiser les variables, les modes de NIP et les moteurs. La fonction de réglage monter une seule fois, après chaque mise sous tension ou réinitialisation de la carte Arduino.
Ensuite, il y a la fonction de boucle qui commence, définit l’inByte comme une variable byte et lui attribue la valeur 255 et commence un certain temps boucle qui s’exécute jusqu'à ce qu’il obtienne une valeur zéro (0) par l’intermédiaire de Serial.read(). Ceci est important afin qu’il sache qu’il obtient trois valeurs suivantes sont les valeurs de la commande. Si nous n’utilisons le zéro, les commandes seraient se mélangent (eg. parfois le déplacement de valeurs pour un lieu alors au lieu de déplacer motorX il se déplacerait reduites). Dans le tout en boucle-nous aussi appel le readInteruptors() fonction pour vérifier si le transport a atteint l’un des commutateurs de limite et arrêter les moteurs. Quand il obtient un zéro valeur le tout en boucle est quittée et il commencer à lire les valeurs des trois prochains, et quand il arrive tous les trois des valeurs il appelle la fonction runMotors().
La fonction runMotors() vérifie la direction dans laquelle chaque moteur doit fonctionner et également si le transport est à ses limites. La seule fonction restante est stateChange() qui se déclenche lorsque quelque chose tombe dans la chute. Il envoie un message que vous avez gagné à l’application d’AIR qui le distribue ensuite à l’utilisateur qui joue.