Page 84 - arduino_Neat
P. 84

valeurCapteur = analogRead(pinCapteur); // lire la pin analogique et mettre la valeur dans
            valeurCapteur
                Serial.println(valeurCapteur); // communiquer au moniteur sériel la valeur du capteur.
            }
            Vous pouvez maintenant sauvegarder votre sketch sous un autre nom (afin de conserver le
            précédent) et télécharger le code sur la carte Arduino. Après quelque temps, le servomoteur
            devrait se mettre à bouger de manière aléatoire, changeant sa position toutes les deux
            secondes. Voyons plus en détail les éléments du code qui ont été ajoutés au code existant.

            Inclusion de librairie
            La première ligne d'instruction de notre programme est maintenant changée. En effet, pour
            utiliser des servomoteurs avec l'Arduino, il est possible d'utiliser une librairie (voir chapitre
            « Bibliothèques externes »). Pour inclure une librairie dans notre programme, nous utilisons la
            commande suivante :

            #include <Servo.h>
            le #include spécifie au programme d'inclure la librairie dont le nom se situe entre les « <> ».
            L'usage spécifique de Servo.h nécessite la création d'un « objet » qui nous permettra de référer
            à certaines fonctions de la librairie. Pour notre projet, nous intitulerons cet objet servo1. Encore
            une fois, ce nom est déterminé par le programmeur et aurait bien pu être maurice.
            Servo servo1;
            Déclaration des variables

            servoPos Nous ajoutons à notre code la variable servoPos. Celle-ci contiendra la valeur de
            position spécifiée pour le servomoteur.

            Configuration (setup)
            servo1.attach (9) ; Une nouvelle instruction de configuration est ajoutée à notre boucle setup ().
            L'instruction *.attach () permet d'associer une pin de la carte Arduino à un objet servo créé plus
            haut. Ainsi, notre objet servo1 se voit associer la pin 9 par cette instruction.

            Boucle principale (loop)

            Notre boucle de programme principal doit maintenant changer. Nous voulons maintenant
            attribuer des positions aléatoires à notre moteur. Plutôt que de simplement supprimer les
            instructions existantes nous permettant de communiquer la valeur du capteur, nous les
            mettrons sous forme de commentaire. Pour ce faire, il suffit d'ajouter au début de l'instruction
            « // ».
            // montrerValeurCapteur ();
            // delay (20); // laisser un cours délai pour éviter le trop-plein d'informations
            Ceci rendra inactive les instructions, et au cas où nous voudrions les retrouver, il ne suffirait
            que de supprimer les « // ». Nous devons également maintenant ajouter une nouvelle fonction
            que nous définirons plus loin.  testerServoMoteur ();
            Sous-routines (testerServoMoteur)

            Tout comme pour la fonction montrerValeurCapteur de l'étape 1, nous devons définir
            testerServoMoteur. Nous utilisons encore void en début d'instruction puisque la fonction ne
            retourne rien. Voyons les instructions qui figurent dans notre nouvelle fonction.
            while (1==1)
            {
                xxxx
            }





            84
   79   80   81   82   83   84   85   86   87   88   89