Exercice : Utilisation de la directive #if (1/2)
Simulateur

Cet exercice est à réaliser avec le simulateur en ligne Wokwi
Schéma à utiliser
Lors de la phase de mise au point d'un programme, il est parfois nécessaire d'afficher la valeur d'un élément. Par exemple, dans le programme suivant, on souhaite afficher conditionnellement le contenu de la constante PORT_LED
. On utilise pour cela la directive #if ... #endif
// La fonction setup est appelée une fois
void setup() {
// Initialise la broche digitale PORT_LED en mode sortie.
pinMode(PORT_LED, OUTPUT);
Serial.begin(9600);//Initialisation de la communication avec le moniteur série
}
// La fonction loop crée une boucle infinie
void loop() {
Serial.println(PORT_LED);
digitalWrite(PORT_LED, ALLUME); // Allume la LED
delay(1000); // Attente d'une seconde
digitalWrite(PORT_LED, ETEINT); // Eteint la LED
delay(1000); // Attente d'une seconde
}
//Fichier constantes.h
Question
Que manque-t-il dans le programme précédent ? Complétez-le et vérifiez qu'il fonctionne correctement.
Solution
// La fonction setup est appelée une fois
void setup() {
// Initialise la broche digitale PORT_LED en mode sortie.
pinMode(PORT_LED, OUTPUT);
Serial.begin(9600);//Initialisation de la communication avec le moniteur série
}
// La fonction loop crée une boucle infinie
void loop() {
Serial.print("Le numero de port est : ");
Serial.println(PORT_LED);
Serial.println("Rien a afficher");
digitalWrite(PORT_LED, ALLUME); // Allume la LED
delay(1000); // Attente d'une seconde
digitalWrite(PORT_LED, ETEINT); // Eteint la LED
delay(1000); // Attente d'une seconde
}
Question
Quel est le rôle de la fonction Serial.println()
?
Indice
Vous pouvez par exemple consulter la documentation.
Question
Existe-t-il une autre fonction similaire à Serial.println()
?
Question
Modifiez le programme précédent pour qu'il n'affiche plus seulement le numéro de port mais plutôt un message comme « Le numéro du port est numero_port »