J
jpbbricole
Compagnon
Salut Mandrak
Pour résumer!!!
Dans un programme Arduino, par convention on a toujour la void setup() et la void Loop().
Bien qu'elles s'écrivent structurellement la même chose, void Setup() ne s'exécute qu'une fois alors que void Loop() tourne en permanence en attendant qu'il se passe quelque chose.
Mais ceci est uniquement décidé par les concepteurs du concept.
une void (vide) ne retourne rien ce serai plutôt une commande ou sous routine.
A l'inverse des "non void" qui peuvent commencer par n'importe quelle type de variable:
int nomDeLaFonction()
string nomDeLaFonction()
byte nomDeLaFonction()
...
...
se terminent toujours par un return valeurAretourner.
Dans ces structures, on peut faire tout ce que l'on veut (ou à peu près) sauf créer d'autres structures. Mais par contre on peut appeler d'autres sous-routines ou fonctions. Au retour, on continue à la ligne suivante de l'appel.
>>Appel sous-routine ledTraitement(LOW); // Si le clignotement est arrêté quand le led est ON, l'éteindre.
}
}
>>Instruction suivante if (boutonState == 1 && etat_bouton == 0)
Les sous routines ou commandes sont très utiles pour "aérer" le programme et ainsi rendre la chose plus visible.
Dans le programme des LED, j'ai placé l'appel void ledTraitement(int ledEtat) dans loop alors qu'il suffirai de mettre digitalWrite(ledPin, ledEtat);.
C'est surtout pour l'exemple, comme l'allumage des leds est une opération essentielle du programme, en "centralisant" ainsi la gestion, si tu veux faire un modification dans la gestion des led, c'est seulement à cet endroit que tu vas le faire. Tu remarquera, au passage, que, dans l'appel de void ledTraitement(int ledEtat) on transmet, en même temps, l'état à afficher. On pourrai transmettre la couleur si on avait des RGB, par exemple.
Si tu as encore des questions.....
Cordialement
jpbbricole
Pour résumer!!!
Dans un programme Arduino, par convention on a toujour la void setup() et la void Loop().
Bien qu'elles s'écrivent structurellement la même chose, void Setup() ne s'exécute qu'une fois alors que void Loop() tourne en permanence en attendant qu'il se passe quelque chose.
Mais ceci est uniquement décidé par les concepteurs du concept.
une void (vide) ne retourne rien ce serai plutôt une commande ou sous routine.
A l'inverse des "non void" qui peuvent commencer par n'importe quelle type de variable:
int nomDeLaFonction()
string nomDeLaFonction()
byte nomDeLaFonction()
...
...
se terminent toujours par un return valeurAretourner.
Dans ces structures, on peut faire tout ce que l'on veut (ou à peu près) sauf créer d'autres structures. Mais par contre on peut appeler d'autres sous-routines ou fonctions. Au retour, on continue à la ligne suivante de l'appel.
>>Appel sous-routine ledTraitement(LOW); // Si le clignotement est arrêté quand le led est ON, l'éteindre.
}
}
>>Instruction suivante if (boutonState == 1 && etat_bouton == 0)
Les sous routines ou commandes sont très utiles pour "aérer" le programme et ainsi rendre la chose plus visible.
Dans le programme des LED, j'ai placé l'appel void ledTraitement(int ledEtat) dans loop alors qu'il suffirai de mettre digitalWrite(ledPin, ledEtat);.
C'est surtout pour l'exemple, comme l'allumage des leds est une opération essentielle du programme, en "centralisant" ainsi la gestion, si tu veux faire un modification dans la gestion des led, c'est seulement à cet endroit que tu vas le faire. Tu remarquera, au passage, que, dans l'appel de void ledTraitement(int ledEtat) on transmet, en même temps, l'état à afficher. On pourrai transmettre la couleur si on avait des RGB, par exemple.
Par elle-même non. Après tu peux faire toutes sortes de boucles dans une structure comme For, do While ... regarde Langage Reference.peut on faire tourné en boucle une autre fonction appeler voidxxx?
Non. Si tu veux un programme bien structuré et de par de là facile à debugger et à entretenir, tu crée des void séparées pour chaque chapitre, de telle façon qu'il fonctionnent comme tu veux. Après il suffit de les appeler depuis la partie du programme qui en a besoin (ce n'est pas forcément depuis void Loop().void clignotant, void phares, void démarreur et de les utilisé, ou faut elles quelles soit obligatoirement utilisé avec void loop?
Si tu as encore des questions.....
Cordialement
jpbbricole
Dernière édition par un modérateur: