Defi 3 – Premier programme

Défi : Lire et afficher la valeur (ON ou OFF) du bouton poussoir (montage du défi 1)

Note : Ce petit projet (capteur d’humidité du sol) offre de belles possibilités pour débuter avec Arduino, car la création (compréhension) du capteur avec des clous (univers technologique) et la saisie de données font un très bon tour d’horizon de la robotique Arduino.

Programmation : déclaration des constantes et variables, forme de base d’un programme, initialiser un programme, lire une valeur avec digitalRead, écrire une valeur avec Serial.begin et Serial.print

Liens PFEQ : Circuit mixte. Prise de mesure (DDP) dans un circuit.

Le présent défi est une suite du montage réalisé dans le défi précédent. Mais cette fois nous allons prendre une mesure dans le circuit et programmer Arduino pour afficher cette mesure.

Montage

valeur_bouton

Schéma électrique

schema_lire_bouton

 

Maintenant que le montage est fait, nous devons programmer Arduino. Comme plus haut nous vous suggérons Blockly@rduino pour ce faire.

Le programme doit lire la valeur de la broche 2 (celle connectée à la sortie de l’interrupteur) puis l’envoyer sur le port série (moniteur série).

Le programme (blocs) ressemblera donc à ceci :

 

 

La vidéo ci-dessous explique la procédure pour créer le petit programme ci-haut et donne quelques conseils d’utilisation de Blockly@rduino.

Attention! Les briques utilisées ne sont pas tout à fait les mêmes dû à une mise à jour du logiciel, mais le principe est le même.

 

Voir le montage et le programme dans le simulateur 123DCircuits.io : https://123d.circuits.io/circuits/1461686-defi-de-base-avec-bouton

Un peu de théorie à propos de la programmation Arduino

Le code Arduino d’origine est en mode texte. Voici à quoi ressemble le code (commenté) pour le présent défi :

void setup() //c'est ici qu'on initialise le programme. Cette boucle roule 1 fois
{
  pinMode(2, INPUT);//On signifie que la broche 2 est en entrée
  Serial.begin(9600);//On démarre la communication avec le port série
} //les parenthèses servent à ouvrir et fermer des boucles

void loop()//c'est la boucle qui roule toujours
{
  Serial.print("État du bouton =");//On écrit du texte dans le moniteur série
  Serial.print("\t");
  Serial.print(digitalRead(2));//On écrit ensuite la valeur de la broche 2
  Serial.println(";");
  Serial.print("\t");//On change de ligne dans le moniteur série. Ce qui rend la lecture plus facile.

}

N’ayez pas peur d’éditer le programme en mode texte, ça peut quelquefois être plus simple que les blocs de Blockly@rduino!

 


Retour à la formation Arduino