Étape 9: Arduino fonctions
L’esquisse suivante s’estompe LED du rouge au vert au bleu au rouge, au vert et ainsi de suite...Le croquis ci-dessus fonctionne, mais il y a beaucoup de code répété. Nous pouvons simplifier en écrivant notre propre fonction d’assistance qui s’estompe d’une couleur dans une autre couleur. Voici à quoi ressemblera la fonction :
Sub fader (int color1, color2 int) {}
pour (luminosité int = 0; luminosité < 256 ; luminosité ++) {}
analogWrite (color1, 255-luminosité) ;
analogWrite (color2, luminosité) ;
Delay(10) ;
}
}
Nous allons examiner cette définition de la fonction pièce par pièce. La fonction est appelée « fader » et elle prend deux arguments. Chaque argument est séparé par une virgule et a un type déclaré dans la première ligne de la définition de la fonction :
Sub fader (int color1, color2 int) {}
Nous pouvons voir que les deux des arguments fader accepte sont entiers (ints), et nous utilisons les noms « color1 » et « couleur2 » comme variables nominales pour notre définition de la fonction. Le « vide » se réfère au type de données que la fonction retourne, étant donné que notre fonction ne retourne rien (elle exécute simplement les commandes), nous avons mis le type de retour void. Si nous devions créer une fonction qui multiplie deux nombres et retourne le produit nous pourrions la définir comme ceci :
int multiplicateur (int nombre1, nombre2 int) {}
produit int = nombre1 * nombre2 ;
retourner le produit ;
}
Remarquez comment nous avons déclaré int comme type de retour ici au lieu de vide.
Les entrailles de la fonction est trucs que nous avons vu auparavant. C’est la même chose pour boucle que nous étions répétant dans notre dernier sketch, mais l’axe de numéros ont été remplacés par les variables color1 et color2. Si nous appelons :
Fader (rouge, vert) ;
de loop() de l’Arduino, l’Arduino évalue la fonction fader avec color1 = rouge et color2 = vert.
Ceci mettant tous ensemble, nous pouvons réécrire l’esquisse à l’aide de cette fonction comme suit, cela fonctionne exactement comme l’esquisse en haut de cette étape.