Une led allumée à l'aide d'un capteur de lumière
Code Arduino
1
//Objectif = allumer une Led à l'aide d'un capteur de luminosité si elle est trop faible2
3
const int PinLum = A6;
4
const int PinLed = 4;
5
6
int EtatLum = 0;
7
int LimiteLum = 400;
8
9
void setup()
10
{11
pinMode(PinLed,OUTPUT);
12
pinMode(PinLum,INPUT);
13
Serial.begin(9600);
14
}
15
16
void loop()
17
{ 18
EtatLum = analogRead(PinLum);
19
Serial.println(EtatLum);
20
21
if (EtatLum < LimiteLum)
22
{23
digitalWrite(PinLed, HIGH);
24
}
25
26
else 27
{28
digitalWrite(PinLed, LOW);
29
}
30
31
delay(200);
32
}
Complément : Code Arduino commenté
1
//Objectif = allumer une Led à l'aide d'un capteur de luminosité si elle est trop faible2
//PIN = Personal Identification Number, adresse utilisée pour identifier un module3
//LED = Light-Emitting Diode (Diode ElectroLuminescente = DEL)4
5
6
//Constantes : la valeur ne changera pas pendant l'exécution du programme 7
const int PinLum = A6; // J'utilise l'adresse Analogique n°A6, relié à un capteur de luminosité, pour associer le nom PinLum
8
const int PinLed = 4; // J'utilise l'adresse numérique n°4, reliée à une LED, pour associer le nom PinLed
9
10
// variables : la valeur peut changer pendant l'exécution du programme11
int EtatLum; // Je crée une variable, appelée EtatLum, pour lire la valeur du capteur lumière
12
int LimiteLum = 400; // Je crée une variable, appelée LimiteLum, pour comparer l'ambiance lumineuse à un seuil
13
14
// Configuration de départ----------------------------------15
void setup()
16
{17
// Initilisation du module de PIN n° 4 (PinLed) comme une SORTIE 18
// = le programme peut envoyer des informations vers la LED19
pinMode(PinLed,OUTPUT);
20
21
// Initilisation du module de PIN n° A6 (PinLum) comme une ENTREE 22
// = le programme peut recevoir des informations du capteur de luminosité 23
pinMode(PinLum,INPUT);
24
25
//Serial.begin est utilisé pour définir la vitesse de communication utiliése 26
//en bauds = nombre d'éléments du signal transmis en une seconde27
Serial.begin(9600);
28
}
29
30
// Exécution de la boucle-----------------------------------31
void loop()
32
{ //Début de boucle33
34
// Récupérer les informations depuis l'entrée Analogique n°A6 et les affecter à EtatLum35
EtatLum = analogRead(PinLum);
36
37
//Afficher le graphique des données sons recueillies dans EtatLum38
//Pour les voir : Menu Outils > Traceur série (courbe de valeurs) ou Menu Outils > Moniteur série (valeurs)39
Serial.println(EtatLum);
40
41
// est-ce que le capteur enregistre un signal inférieur à LimiteLum ?42
if (EtatLum < LimiteLum)
43
44
// Si oui, alors 45
{46
digitalWrite(PinLed, HIGH); // allumer la LED = envoyer l'information mettre la LED en mode HIGH
47
}
48
49
else // Sinon
50
{51
digitalWrite(PinLed, LOW); // éteindre la LED = envoyer l'information mettre la LED en mode LOW
52
}
53
54
delay(200);
55
}