Mention légal| Contact

les variables

Les variables.

Ma définition:
Les variables comme sont nom l'indique sont conçu pour subir des variations et prendre des valeurs bien distinctes, selon des cas individuels et en fonction des circonstances d'un système.

En programmation une variable est un espace mémoire dans lequel on y stock de façon continue une valeur à exploiter.

Sa construction.

  • type nom de la variable = valeurs de données; // Variable.
  • int variable = 100; // commentaires

Imaginons une boîte, correspondant à l'espace mémoire de la variables et dans cette boite ont y place des objets qui représentent notre valeur de données. Nous pouvons modifier, à notre convenance le nombre d'objets qui s'y trouve et en fonction de sa taille. Plus la boite est grande plus ont peut y mettre de choses.

Il y a plusieurs façons de stocker des données dans une variables.
Elles peuvent êtres:

  • Renseignées par valeur que vous avez vous même défini et qui ne changeras que par vôtre action.
  • Renseignées par le résultat d'une opération de calcul.
  • Assignées à une entrée analogique et récupérer la valeurs du signale.
  • Assignées à une entrée logique et retourner un état logique pour une sortie.

Pour les exploiter et les différencier les unes des autres, il nous est nécessaire de préalablement les crée en les nommant de façon judicieuse, en fonction des données qu'elles stockent, ou de leurs travail. C'est ce qu'on appel une déclaration de variables.

Pour déclarer une variable, nous devons en connaître son type de données.

Le type de la donnée dépendra de la nature de la valeur à traiter dans la variable.
Voici les principaux Type de données pour la nature de la variable. Il en existe d'autres.

TypesNature de la variableExemple de éclarationValeur de donnée
charCaractères alphabétiques
de ' a à z  '
char variable = 'A';-128 à 127
intNombre entier
pouvant exploiter
les valeurs négatives
int variable = 9999;-32 768 à 32 767
floatNombre à virgule
pouvant exploiter
les valeurs négatives
float variable = 9999.99;-3.4*10-38 à 3.4*1038
longChiffre entier de grande
«  taille  »
long variable = 999999999;0 à 4 294 967 295
byteChaîne de bits
(Ex: 01100111)
byte variable = B01010101;0 à 255
boolean1 ou 0, true ou false,
HIGH ou LOW.
boolean variable = true;
boolean variable = LOW;
boolean variable = 0;
unsigned intChiffre entier
exclusivement positif.
unsigned int variable = 9999;0 à 65 535
StringChaine de caractères
"mots complets"
String variable = "arduino";

Le signe d'une d'une variable.

Spécificité du terme « unsigned » qui veut dire en anglais « non signé ».
Une donnée évolue dans le sens positif mais peut aussi avoir besoins d'évoluer vers le sens négatif (ex: -231) ce qui implique de prendre en compte -ou pas- le signe (-) du chiffre en fonction du traitement de la variable.
Si pour des raisons d'exploitation notre variable n'a pas d'intérêt à être dans le sens négatif, il faut le spécifier par le terme « unsigned » qui se situera avant le type de données.

Nous verrons en détail chaque type de variable dans nos travaux de mise en pratique que vous trouverez en téléchargeant les codes sources de se sujet.

Petite précision: Une variable est dite déclarée lorsque l'on spécifie son type et son nom dit d’emploi. (à ce moment là, elle est crée). Cette action ne se fait qu'une fois et par la suite il n'est plus utile de spécifier son type lorsque l'on fait appel à elle pour le traitement du programme. Le fait de spécifier un type permet la création d'une variable que l'on nomme à notre convenance.

Son utilisation.

Revenons à nos petites boîtes. Nous constatons que chaque boites à un nom propre -une étiquette- et qu'elles ne peuvent contenir que des objets de la même famille dont on  a  choisi le type. On ne mélange pas les torchons et les serviettes en informatique !! Exemple: Si sur notre boîte nous spécifions le type "billes" nous faisons le choix d' y mettre que des billes. Puis Nous lui donnerons le nom d'exploitation de notre choix; du genre "la_boite". Ce qui nous donne en référence à notre boîte.

bille la_boîte = X;  // Nous chargeons la valeurs de X dans la variable.

  • X = Le nombre de billes que l'on veut y mettre.
  • bille = type de donnée que l'on souhaite y placer.
  • la_boite= le nom d'exploitation de la variable.

Les modes de déclarations

Une fois déclarée nous pouvons exploiter nos variables dans notre programme "Sketch", en fonction de son utilité. Pour cela il y a deux façons d'exploiter les variables. En local ou en global.

  • La variable dite LOCALE est exploité seulement dans la boucle programmes dans la quelle elle a été déclaré, c'est a dire entre ses accolades{ },. Exemple une variable déclaré dans la boucle setup() {...} ne sera pas exploitable dans la boucle loop() {…} ou une boucle de fonction personnelle exemple blabla() {...}.
  • La variable dite GLOBALE peut être exploitée dans l'intégralité du programme. Elle se trouve de ce fait déclaré en dehors des boucles. Exemple une variable déclarée en ouverture de "Sketch" en dehors des boucles setup() et loop() ou exemple step() serra exploitable dans ces dernières.

Il faut donc prendre garde à quelle endroit nous déclarons nos variables. 

Re-voila nos boi-boîte. Il faut maintenant que nous puissions les utiliser dans notre programme. Représentons le comme une grande pièces dans laquelle il y a deux armoires,  loop() {...} et setup() {...}. Si je pose (déclare) ma boite dans la pièces et hors des armoires, le contenu de celle-ci peut être rangé et déplaçable dans n'importe quelles armoires. Mais si je pose ma boite dans une des deux armoires le contenu de celle ci ne sera rangé et déplaçable que à l’intérieur de l'armoire ou elle a été posée. Les boites en dehors des armoires sont des variables globales et les variables dans les armoires des variable locales.

Variable constante et défini.

Nous rencontrerons d'autres façons de déclarer des variables.

  • const qui est l'abrégé du mot anglais "constant" qui veut dire "constante". Le terme const placé avant le type de la variable indique que celle-ci prend une valeurs constante, en d'autre terme, fixe. La valeur de la variable ne peut donc plus être modifiée dans le cours du traitement programme mais seulement exploitée en lecture. La variable devient une constante.
  • #define qui veux dire "définir" en anglais. Ce terme placé avant le type de la variable fait la même chose que const sauf qu'il a la faculté supplémentaire -comme son non l'indique- de définir l'espace mémoire au plus juste de la "taille" de la valeur renseigné dans la variable. Ce qui veut dire que la variable n'utilisera que l'espace mémoire utile pour la valeur qui lui est affecté, car celui ci restera inchangé.Cette opération de définition se fait au moment de la compilation.

Il est conseillé de préférer l'utilisation de const plutôt que #define qui peut être une source d'erreur probable si l'on ne prend pas garde au nom "d'emploi" lors de la déclaration, si il est le même qu'une variable déjà déclarée. Cette dernière prendrait systématiquement la valeur de la variable déclaré en #define. L'utilisation de ce genre de déclaration peut perturber le fonctionnement de notre programme.

FIN

Vous découvrirez plus en détaille l'exploitation des variables dans nos travaux de mise en pratique que vous trouverez en téléchargeant les codes sources de ce sujet.

Merci

 

 

 

 

 

 


Recevez gratuitement les codes sources de PlaisirArduino

Amusez-vous tout de suite avec les entrées/sorties de votre carte Arduino Uno

Vous y retrouverez : des scketchs, des schémas et des PDF