Menu
CoddyTech

Luxmètre

Fait partie de la section Entrées du Journey Arduino de Coddy. Leçon 22 sur 22.

Cette leçon rassemble les différentes parties : un luxmètre qui affiche la lumière en pourcentage et la représente sur une barre de trois LED, comme les barres de signal d’un téléphone.

Répartis le travail en fonctions, chacune ayant une seule tâche, pour que loop() se lise comme une description :

void loop() {
  int percent = lightPercent();
  showLevel(percent);
  // afficher le pourcentage
}

lightPercent() lit la lumière du module sur AO et renvoie une valeur de 0 (sombre) à 100 (lumineux). La valeur de AO diminue quand la lumière augmente, alors fais la conversion à l’envers : map(reading, 0, 1023, 100, 0) transforme 1023 en 0 et 0 en 100.

showLevel(int percent) attribue à chaque LED de la barre son propre seuil : la première s’allume au-dessus de 25, la deuxième au-dessus de 50, la troisième au-dessus de 75. Chacune a besoin de son else, pour que la barre puisse aussi diminuer quand la lumière faiblit.

challenge icon

Défi

Moyen

La broche AO du module de luminosité est connectée à A0, et les LED de la barre sont connectées aux broches 10, 11 et 12 :

  • int lightPercent() : 0 dans l’obscurité, 100 en pleine lumière
  • void showLevel(int percent) : la broche 10 s’allume au-dessus de 25, la broche 11 au-dessus de 50, la broche 12 au-dessus de 75
  • dans loop(), appelle les deux fonctions, affiche le pourcentage et attends 200 ms

Appuie sur Run, déplace le curseur de luminosité, puis appuie sur Check.

Essayez vous-même

const int lowPin = 10;
const int midPin = 11;
const int highPin = 12;

// écris int lightPercent() ici

// écris void showLevel(int percent) ici

void setup() {
  pinMode(lowPin, OUTPUT);
  pinMode(midPin, OUTPUT);
  pinMode(highPin, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  // lis la luminosité en pourcentage, affiche-la sur la barre, imprime-la, attends 200 ms
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Entrées

Entraînez-vous par vous-même : Playground Arduino