This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
in202:seance_5:blink [2021/04/28 13:42] bmonsuez [Question n°1] |
in202:seance_5:blink [2022/11/18 10:46] (current) |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Compilation et uploading d'un programme ====== | ====== Compilation et uploading d'un programme ====== | ||
| + | |||
| + | [[in202:seance_5|Retour à la séance 5]] | ||
| ===== Etape 1 ===== | ===== Etape 1 ===== | ||
| Line 15: | Line 17: | ||
| Analyser le code et expliquer ce qu'il fait. Vous pouvez récupérer les informations sur les appels de fonctions sur le [[https://www.arduino.cc/reference/en/|langage reference section]] du site arduino.cc accessible en ligne. | Analyser le code et expliquer ce qu'il fait. Vous pouvez récupérer les informations sur les appels de fonctions sur le [[https://www.arduino.cc/reference/en/|langage reference section]] du site arduino.cc accessible en ligne. | ||
| + | <hidden Correction> | ||
| + | |||
| + | Ce programme se décompose en deux sections : | ||
| + | |||
| + | La section d'initialisation qui est effectuée par la fonction ''setup'': | ||
| + | <code cpp> | ||
| + | void setup() { | ||
| + | // initialize digital pin LED_BUILTIN as an output. | ||
| + | pinMode(LED_BUILTIN, OUTPUT); | ||
| + | } | ||
| + | </code> | ||
| + | |||
| + | Dans cette fonction, nous initialisons le port ''LED_BUILTIN'' auquel la led interne est connectée en mode ''OUTPUT'', ceci signifie que c'est le contrôleur ''ARDUINO'' qui va contrôler le niveau de tension au port, c'est-à-dire soit forcer le port à 0V ou à 3,3 V. | ||
| + | |||
| + | <code cpp> | ||
| + | void loop() { | ||
| + | digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level) | ||
| + | delay(1000); // wait for a second | ||
| + | digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW | ||
| + | delay(1000); // wait for a second | ||
| + | } | ||
| + | </code> | ||
| + | |||
| + | Cette fonction ''loop'' est appellée de manière cyclique. Cette fonction effectue les opérations suivantes: | ||
| + | - met le port ''LED_BUILTIN'' au niveau de tension 3.3V (''HIGH''), | ||
| + | - attend un seconde, | ||
| + | - met le port ''LED_BUILTIN'' au niveau de tension 0V (''LOW''), | ||
| + | - attend un seconde. | ||
| + | |||
| + | Comme cette fonction est appelée de manière cyclique : | ||
| + | |||
| + | ''loop()'' => code interne => ''loop()'' => code interne => ''loop()'', | ||
| + | | ||
| + | ceci permet d'allumer et d'éteindre la diode connectée sur le port ''LED_BUILTIN'' toute les secondes. | ||
| + | |||
| + | </hidden> | ||
| ===== Etape 2 ===== | ===== Etape 2 ===== | ||
| Line 22: | Line 60: | ||
| Vérifier que la compilation s'exécute correctement. | Vérifier que la compilation s'exécute correctement. | ||
| + | |||
| + | <hidden Correction> | ||
| + | Cela ne devrait pas générer d'erreur. | ||
| + | </hidden> | ||
| ===== Etape 3 ===== | ===== Etape 3 ===== | ||
| Line 31: | Line 73: | ||
| Vérifier que le téléchargement se déroule correctement et que la carte exécute correctement le code. | Vérifier que le téléchargement se déroule correctement et que la carte exécute correctement le code. | ||
| - | Effectuer une compilation du ''sketch''; les programmes Arduino sont appelés des schémas. La raison | + | Effectuer une compilation du ''sketch''; les programmes Arduino sont appelés des schémas. |
| + | |||
| + | <hidden Correction> | ||
| + | Cela devrait déclencher le clignotement de la diode interne. | ||
| + | </hidden> | ||
| + | |||
| ====== Navigation ====== | ====== Navigation ====== | ||