# Club robotique - Explication et fonctionnement des logiciels # DĂ©couvre Arduino IDE et la logique d'un programme ## đŸ–„ïž **À quoi sert l’Arduino IDE ?** ### 🔍 1. C’est quoi un microcontrĂŽleur ? Un **microcontrĂŽleur** est un **petit cerveau Ă©lectronique**. Il est capable de recevoir des informations, de **les traiter**, et de **faire des actions**. Par exemple : - Allumer une LED quand on appuie sur un bouton - Ouvrir une barriĂšre quand on passe une carte - Mesurer la tempĂ©rature et afficher la valeur ### 🧠 Exemples de cartes avec microcontrĂŽleur : Ces cartes sont comme des mini-ordinateurs que l'on peut programmer :
CarteCaractéristiques
**Arduino Uno**Simple, idéale pour débuter
**Arduino Nano**Plus petite, mais similaire à l’Uno
**ESP32**possÚde le Wi-Fi et Bluetooth intégrés
**...**...
Chacune de ces cartes contient un **microcontrĂŽleur**, c’est-Ă -dire un cerveau qui exĂ©cute les programmes. ### đŸ’» 2. L’Arduino IDE : l’outil pour programmer ces cartes L’**IDE Arduino** (IDE = Environnement de DĂ©veloppement IntĂ©grĂ©) est le **logiciel** qui permet d’écrire des programmes pour ces cartes. Avec l’Arduino IDE, on peut : - Écrire le **code** en langage **C/C++ simplifiĂ©** - **VĂ©rifier** si le code contient des erreurs - **Envoyer** le programme Ă  la carte par un cĂąble USB **Si le logiciel n'est pas encore installĂ© sur votre ordinateur.** Vous pouvez le tĂ©lĂ©charger ici : [https://www.arduino.cc/tĂ©lĂ©chargement](https://www.arduino.cc/en/software/?_gl=1*roz0tz*_up*MQ..*_ga*MjEwNzUyNTA0MC4xNzUxODIzMjg2*_ga_NEXN8H46L5*czE3NTE4MjMyODUkbzEkZzAkdDE3NTE4MjMyODUkajYwJGwwJGgxNjM2NzMzMTk1#ide) Il vous suffit ensuite de sĂ©lectionner le systĂšme d'exploitation que vous utilisez. [![image.png](https://innovation.iha.unistra.fr/uploads/images/gallery/2025-07/scaled-1680-/cqaimage.png)](https://innovation.iha.unistra.fr/uploads/images/gallery/2025-07/cqaimage.png) ### đŸ§± 3. Structure d’un programme Arduino : les bases Ă  connaĂźtre Un programme Arduino est toujours organisĂ© de la **mĂȘme maniĂšre**, avec **diffĂ©rentes parties bien dĂ©finies** : // 1. Importation des librairies // 2. DĂ©claration des variables et constantes // 3. setup() : s’exĂ©cute une fois au dĂ©marrage // 4. loop() : s’exĂ©cute en boucle #### 📚 1. Importation des **librairies** *(facultatif)* Une **librairie** est un morceau de code dĂ©jĂ  Ă©crit par d’autres, que l’on peut utiliser pour **communiquer avec des capteurs, des Ă©crans, des moteurs, etc.** 👉 On les dĂ©clare **tout en haut** du programme. Et elle se note de cette façon Exemple :
\#include <Nom_de_la_librairie.h>
🔱 2. DĂ©claration des **constantes** et **variables globales**
Juste **sous les librairies**, on déclare : - Les **constantes** (valeurs fixes, comme les numéros de broches sur lesquels l'on s'est connecté) - Les **variables globales** (utilisées partout dans le programme)
#### ⚙ 3. `void setup()` : au dĂ©marrage - Cette fonction est **exĂ©cutĂ©e une seule fois** au dĂ©but. - On y met tout ce qu’il faut **initialiser** : la communication sĂ©rie, les broches d’entrĂ©e/sortie, les capteurs, etc. - Par exemple, si je souhaite programmer un capteur qui me donnera une information Ă  un moment donnĂ©. J'obtiendrai un code similaire Ă  :
`void setup() {`
`capteur(INPUT);  // Prépare le capteur en entrée. INPUT = entrée `

Attention : Dans votre code vous pouvez écrire des commentaires. Ces commentaires sont donc du texte qui ne sera pas lu par le programme mais qui vous permettra d'expliquer votre programme au fur et a mesure. Cela vous permettra donc de mieux vous repérez dans votre code, de mieux débugger votre code mais aussi de le rendre plus lisible pour un tier. Comment faire ? : Il vous suffit d'écrire // devant chaque ligne de code. Si vous écrivez un commentaire sur plusieurs ligne vous pouvez commencer par /\* et finir par \*/

#### 🔁 4. `void loop()` : la rĂ©pĂ©tition - Cette fonction est **exĂ©cutĂ©e en boucle sans arrĂȘt** - C’est lĂ  qu’on Ă©crit le comportement du programme (rĂ©agir aux boutons, clignoter, mesurer, etc.) Exemple :
`void loop() {`
Allumer capteur;
Attendre (10 secondes);
Éteindre capteur;
}

Attention les codes que je vous indique ne sont pas fonctionnel pour le moment, ils permettent de comprendre petit à petit le fonctionnement et la structure d'un code sur arduino IDE. Si vous avez bien fait attention. Vous pouvez voir que lorsque je déclare une fonction. Il y a des parenthÚse à coté et pour ouvrir la fonction une { et pour la fermer une autre } mais dans l'autre sens.

#### 4. Exercice Essayer sur papier (tableau, ardoise, etc...) de récapituler le fonctionnement et la structure d'un code arduino. # Mblock