IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Cours complet pour apprendre à programmer un Arduino


précédentsommairesuivant

XII. Bien coder

L'utilisation d'un langage de programmation passe par l'apprentissage d'un vocabulaire et d'une syntaxe précise. Dans ce chapitre, nous aborderons quelques unes de ces règles ainsi que d'autres éléments à prendre en considération dans l'écriture d'un programme Arduino. Si quelqu'un doit lire ou modifier votre code, vous pouvez lui faciliter la tâche en attachant une attention particulière à sa structure et en y apposant des commentaires qui expliquent votre logique. Bref, un code clair offre une meilleure lecture, qu'il s'agisse de modifier ses configurations pour l'adapter à votre besoin ou de localiser la source d'une erreur.

XII-A. Conventions de nommage

La syntaxe d'un langage de programmation se base généralement sur une « convention de nommage(16) ». Il est important de respecter cette nomenclature pour rester dans l'esthétique du code.

Dans la déclaration des variables, il faut écrire les constantes en majuscules :

 
Sélectionnez
const int CAPTEUR = A0; // CAPTEUR est une constante.

Pour les autres variables (int, char, etc.), les fonctions et les sous-routines seront en minuscule. Dans le cas où ces variables ont des noms composés, le premier mot est en minuscule et les autres commencent par une majuscule. Par exemple :

 
Sélectionnez
int bookSprint = 2011;

Pour les sous-routines (voir explication plus bas), la règle est identique à celle des variables composées. Par exemple :

 
Sélectionnez
afficherValeurCapteur ();

Attention à ne pas omettre le point-virgule à la fin des instructions.

XII-B. Déclarer ses variables

Le nom des éléments (capteurs, actionneurs, etc.) utilisés dans un projet sont généralement repris par les variables du programme qui fait fonctionner le dispositif. Cette pratique permet de clarifier la fonction des différentes variables. Par exemple, pour choisir une variable qui a pour fonction de définir le port sur lequel est connectée une LED, nous choisirons la variable suivante :

 
Sélectionnez
int brocheLed = 13;

XII-C. Indenter son code

Il est conseillé d'effectuer un retrait par rapport à la ligne précédente à chaque nouveau bloc d'instructions. Les blocs d'instructions inscrits dans les fonctions et boucles sont délimités par des accolades, l'une est ouvrante et l'autre fermante.

 
Sélectionnez
1.
2.
3.
4.
if (etatCaptation == 1) {
if (valeurCapteur >= seuil) {
analogWrite (pinLed, HIGH);}
}

Le code ci-dessus n'est pas indenté. Après indentation, nous obtenons ceci :

 
Sélectionnez
1.
2.
3.
4.
5.
if (etatCaptation == 1) {
    if (valeurCapteur >= seuil) {
        analogWrite (pinLed, HIGH);
    }
}

Il est à noter qu'un code indenté est plus attrayant et lisible. C'est un aspect qui facilite la recherche d'erreurs éventuelles qui pourraient se glisser dans le code.

XII-D. Faire des commentaires

Il n'y a rien de plus embêtant qu'une instruction écrite dans un code et dont on a oublie l'utilité quelques jours après. Les commentaires permettent de se retrouver dans son code. Ils facilitent en outre la compréhension du code pour ceux qui en auront éventuellement besoin.

Ci-dessous, un commentaire sur plusieurs lignes explique le fonctionnement du programme.

 
Sélectionnez
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
/*TEXTE BRILLANT

Ce programme permet de piloter les LED à partir de certaines touches du clavier.
Principe:

Saisir les caractères dans le moniteur sériel de l'interface de programmation Arduino pour allumer et éteindre les LED.
Saisir 'R' pour allumer la LED rouge,
Saisir 'J' pour allumer la LED jaune,
Saisir 'V' pour allumer la LED verte,
Saisir 'B' pour allumer la LED bleue,
Saisir 'E' pour éteindre les LED.

*/

Ci-dessous, une instruction suivie d'un commentaire explique l'instruction.

 
Sélectionnez
digitalWrite(pinLed0, HIGH); // Allumer la LED connectée à pinLed0

XII-E. Les sous-routines ou fonctions

Quand votre code commence à tenir une place importante et que vous utilisez à plusieurs reprises les mêmes blocs d'instructions, vous pouvez utiliser une sous-routine qui vous permet de mieux organiser et d'alléger votre programme Les sous-routines doivent être écrites après la boucle principale.

XII-F. Vérifier son code

Les erreurs dans un code sont parfois subtiles à retrouver. Il est donc conseillé de compiler régulièrement son code avec le bouton « Verify » ; les erreurs éventuelles apparaissent dans la console.

XII-G. Bonus

Pour indenter votre code vous pouvez utiliser la fonction « autoformat ». Cette fonction se base sur les conventions de programmation pour formater le code. Elle indente votre code automatiquement. Pour cela il faut aller dans le menu Tools > Auto Format ou utiliser le raccourci correspondant.


précédentsommairesuivant

Ce cours est publié sous licence GPLv2, peut être lu et copié librement.