Étape 5: Arduino LED clignotent
Dans cet exemple nous associer notre circuit de LED à l’une des broches numériques de l’Arduino et éteindre le voyant marche et en arrêt avec le code. Cet exemple présente quelques fonctions utiles, intégrées dans la langue de l’Arduino, ils sont :pinMode (pinNumber, mode) - pinMode est utilisé au cours de la partie setup() de l’esquisse pour initialiser chaque broche que nous utilisons comme une entrée ou une sortie. Nous ne pouvons pas lire ou écrire sur une broche avant pinMode a été définie. pinMode() prend deux arguments - un code PIN (chacune des broches de l’Arduino est étiqueté avec un numéro) et que le mode que nous voulons la goupille (« INPUT » ou « OUTPUT »). Dans le cas d’un témoin clignotant, nous envoyons des données hors de l’Arduino pour contrôler l’état de la LED, donc nous utilisons « Sortie » comme deuxième argument.
digitalWrite (pinNumber, État) - digitalWrite est une commande qui permet de régler la tension d’une broche à 5V ou au sol (n’oubliez pas le "sol" est synonyme de 0 Volt). Dans le dernier exemple, nous avons accroché une LED pour une alimentation de 5V et j’ai vu il s’allume, si nous brancher la LED à l’une des broches numériques de l’Arduino au lieu de cela, nous pouvons allumer la LED en définissant le code pin à 5 v et au large en définissant la broche à la masse. digitalWrite() prend deux arguments - un numéro d’identification et de l’état de la broche (« HIGH » pour le 5V et « LOW » pour sol).
delay(timeInMs) - retard met en pause le programme pendant un certain temps. Par exemple, delay(2000) se met en pause le programme pour 2000 millisecondes (2 000 millisecondes = 2 secondes), delay(100) se met en pause le programme pour les 100 millisecondes (1/10 de seconde), et ainsi de suite...
Voici le code de clignotement de la LED, exécutez ce code sur votre Arduino.
Quelques notes sur le code :
Les lignes qui commencent par "/ /" sont des commentaires - Arduino ignore ces.
Vous avez peut-être remarqué tous les points-virgules, les points-virgules sont utilisés à la fin de chaque commande en langage Arduino. Si vous avez oublié un point virgule, vous obtiendrez une erreur. Vous y trouverez que de nombreux autres langages de programmation utilisent des points-virgules à la fin de chaque ligne.
Dans ce code « ledPin » est une variable. Les variables sont utilisées pour stocker des informations dans les programmes, dans ce sketch, j’utilise la variable « ledPin » pour mémoriser le numéro 7. Plus tard dans le programme quand l’Arduino heurte une ligne avec la variable « ledPin », il permettra d’évaluer les variables en fonction de sa valeur actuelle stockée. Si la ligne :
pinMode (ledPin, sortie) ;est évaluée par Arduino comme :
pinMode (7, sortie) ;
En fait, nous pourrions remplacer toutes les utilisations de pinMode avec le numéro 7 et le programme fonctionnerait exactement la même chose, mais en utilisant la variable nous aide plus facilement lu et comprennent le code.
« int » à la première ligne est un type de données - en langage Arduino, vous devez toujours initialiser des variables en déclarant leur type. Il existe plusieurs types différents (vous pouvez lire sur chacun d’eux ici), pour l’instant, tout ce que vous devez savoir est que variables int sont des nombres entiers positifs ou négatifs - vous les utiliserez souvent.
Voici une simulation de l’esquisse, essayez en appuyant sur le bouton play pour voir comment ça marche (fonctionne mieux en Chrome)
Comme prévu, la LED s’allume pendant une seconde, puis s’éteint pendant une seconde. Essayez de changer la longueur de la delay() pour voir comment il affecte le temps de clignotement de LED.
Une autre chose à regarder dehors pour - une erreur que les gens font souvent consiste à omettre le dernier delay() dans le loop(). Essayer - vous trouverez que le voyant reste allumé sans clignoter. Cela pourrait être source de confusion pour vous, car nous avons encore un digitalWrite (ledPin, basse) dans le programme. Ce qui se passe ici, c’est la led est éteinte, mais l’Arduino immédiatement arrive à la fin de la loop() et commence à exécuter la première ligne de la loop() nouveau (allumer la LED). Cela arrive si vite que le œil humain ne peut pas voir la LED tour pendant ce bref moment tandis que la boucle est redémarré.