Fonctionnement Arduino IDE

Le logiciel qui permet de programmer votre carte ESP8266 porte le nom d’IDE, ce qui signifie Integrated Development Environment ou encore Environnement de Développement Intégré.

l est recommandé de faire l’installation de l’IDE avant de connecter pour la première fois une carte ESP8266 en USB; ainsi les pilotes nécessaires seront déjà installés. Le logiciel est écrit en Java. L’installation de cet outil dépend du système d’exploitation de votre ordinateur. Les étapes sont donc détailler pour chaque système.

La première chose à faire est de se rendre sur le site https://www.arduino.cc/ qui propose la version (1.8.12) du logiciel, dans l’onglet « Software ».

L'image suivante montre la partie de l’onglet « Software » permettant de choisir l’IDE en fonction de son système d’exploitation.

Une fois votre choix de système d’exploitation fait (voir ce qui est expliqué ci-dessous), vous tomberez sur une page qui vous propose de faire un don pour aider au développement du logiciel : « contribute and download ». Si vous ne souhaitez pas faire de don, il faudra cliquer sur : « just download ».

Windows

L’IDE nécessite pour fonctionner la présence de Java Runtime Environment. Le logiciel convient de Windows XP à Windows 10. Si c’est la première installation de l’IDE sur votre ordinateur, il est conseillé de choisir dans l’onglet « Software » l’option « Windows Installer » qui est une version installable; il suffit alors de suivre les différentes étapes et les pilotes (drivers) pour les cartes Arduino seront également installés. Cela demande d’avoir les droits d’administrateur sur l’ordinateur que vous utilisez.

Une autre possibilité est l’option « Windows ZIP » pour ceux qui ne sont pas administrateurs de l’ordinateur. Vous obtiendrez le téléchargement d’un fichier « arduino-1.8.12-windows.zip » que vous enregistrez où vous voulez; il suffit ensuite, par un clic droit, de faire « Extraire tout… » pour obtenir un dossier « arduino-1.8.12 » dans lequel se trouve le programme exécutable arduino.exe (ne pas confondre avec arduino_debug). Créez un raccourci pour obtenir l’icône de l’IDE sur votre bureau.

Attention, si l’installation par fichier Zip rend possible la cohabitation de plusieurs versions sur la même machine, ce n’est plus possible avec l’installeur. Si une version plus ancienne est déjà présente sur votre machine, vous serez obligé de la désinstaller avant de passer à la nouvelle! Par contre, une version installée peut très bien cohabiter avec une ou plusieurs versions déployée par fichier Zip. Pour cette raison, l’installation par fichier ZIP est intéressante si ce n’est pas la première installation et de plus, permet d’installer une solution portable.

Au premier lancement, L’IDE va créer un répertoire 'Arduino' dans votre dossier 'Mes Documents' (ou 'Documents' sur Windows 10) qui contiendra vos futurs projets.

Vérification après installation et présentation

Lançons le logiciel en double-cliquant sur l’icône avec le symbole « infinie » en vert. C’est l’exécutable du logiciel. Après un léger temps de réflexion, une image s’affiche :

Cette fois, après quelques secondes, le logiciel s’ouvre. Une fenêtre se présente à nous:

Ce qui saute aux yeux en premier, c’est la clarté de présentation du logiciel. On voit tout de suite son interface intuitive. Voyons comment se compose cette interface.

Correspondance

  • Le cadre numéro 1 : ce sont les options de configuration du logiciel
  • Le cadre numéro 2 : il contient les boutons qui vont nous servir lorsque l’on va programmer nos cartes
  • Le cadre numéro 3 : ce bloc va contenir le programme que nous allons créer
  • Le cadre numéro 4 : celui-ci est important, car il va nous aider à corriger les fautes dans notre programme. C’est le débogueur.

Approche et utilisation du logiciel

Attaquons-nous plus sérieusement à l’utilisation du logiciel. La barre des menus est entourée en rouge et numérotée par le chiffre 1.

Le menu File

C’est principalement ce menu que l’on va utiliser le plus. Il dispose d’un certain nombre de choses qui vont nous être très utiles. Il a été traduit en français progressivement, nous allons donc voir les quelques options qui sortent de l’ordinaire :

Carnet de croquis

Ce menu regroupe les fichiers que vous avez pu faire jusqu’à maintenant (et s’ils sont enregistrés dans le dossier par défaut du logiciel).

Exemples

Ceci est important, toute une liste se déroule pour afficher les noms d’exemples de programmes existants ; avec ça, vous pourrez vous aider/inspirer pour créer vos propres programmes ou tester de nouveaux composants.

Téléverser

Permet d’envoyer le programme sur la carte Arduino.

Préférences 

Vous pourrez régler ici quelques paramètres du logiciel. Le reste des menus n’est pas intéressant pour l’instant, on y reviendra plus tard, avant de commencer à programmer.

Les boutons

Voyons à présent à quoi servent les boutons, encadrés en rouge et numérotés par le chiffre 2.

  • Bouton 1 : Ce bouton permet de vérifier le programme, il actionne un module qui cherche les erreurs dans votre programme
  • Bouton 2 : Charge (téléverse) le programme dans la carte Arduino.
  • Bouton 3 : Crée un nouveau fichier.
  • Bouton 4 : Ouvre un fichier.
  • Bouton 5 : Enregistre le fichier.
  • Bouton 6 : Ouvre le moniteur série (on verra plus tard ce que c’est).

Enfin, on va pouvoir s’occuper du matériel que vous devriez tous posséder en ce moment même : la carte ESP8266 !

La syntaxe du langage

La syntaxe d’un langage de programmation est l’ensemble des règles d’écriture liées à ce langage. On va donc voir dans cette courte section les règles qui régissent l’écriture du langage Arduino.

Le code minimal

Avec Arduino, nous devons utiliser un code minimal lorsque l’on crée un programme. Ce code permet de diviser le programme que nous allons créer en deux grosses parties.

  // fonction d'initialisation de la carte
  void setup()
  {
      // contenu de l'initialisation
  }

  // fonction principale, elle se répète (s’exécute) à l'infini
  void loop()
  {
      // contenu de votre programme
  }

Vous avez donc devant vous le code minimal qu’il faut insérer dans votre programme. Mais que peut-il bien signifier pour quelqu’un qui n’a jamais programmé ?

La fonction setup

Dans ce code se trouvent deux fonctions. Les fonctions sont en fait des portions de code.

  // fonction d'initialisation de la carte
  void setup()
  {
      // contenu de l'initialisation
      // on écrit le code à l'intérieur
  }

Cette fonction setup() est appelée une seule fois lorsque le programme commence. C’est pourquoi c’est dans cette fonction que l’on va écrire le code qui n’a besoin d’être exécuté une seule fois. On appelle cette fonction : fonction d’initialisation. On y retrouvera la mise en place des différentes sorties et quelques autres réglages. C’est un peu le check-up de démarrage.

Une fois que l’on a initialisé le programme il faut ensuite créer son « cœur », autrement dit le programme en lui même.

  // fonction principale, elle se répète (s’exécute) à l'infini
  void loop()
  {
      // contenu de votre programme
  }

C’est donc dans cette fonction loop() où l’on va écrire le contenu du programme. Il faut savoir que cette fonction est appelée en permanence, c’est-à-dire qu’elle est exécutée une fois, puis lorsque son exécution est terminée, on la ré-exécute et encore et encore. On parle de boucle infinie.

Les points virgules

Les points virgules terminent les instructions.

Les accolades

Les accolades sont les « conteneurs » du code du programme. Elles sont propres aux fonctions, aux conditions et aux boucles. Les instructions du programme sont écrites à l’intérieur de ces accolades.

Les commentaires

Pour finir, on va voir ce qu’est un commentaire. J’en ai déjà mis dans les exemples de codes. Ce sont des lignes de codes qui seront ignorées par le programme. Elles ne servent en rien lors de l’exécution du programme.

  // cette ligne est un commentaire sur UNE SEULE ligne
  /*cette ligne est un commentaire, sur PLUSIEURS lignes
  qui sera ignoré par le programme, mais pas par celui qui lit le code */

Les accents

Il est formellement interdit de mettre des accents en programmation. Sauf dans les commentaires.