Il est brut d'écriture , je n'ai pas chercher a réduire le nombre de lignes , et les commentaires sont nombreux .
Code : Tout sélectionner
```cpp
//gestion eclairage batiment central
//version 3/0/2
// lampes batiment de droite a gauche de face
const int Lampe1 = 3;
const int Lampe2 = 5;
const int Lampe3 = 6;
const int Lampe4 = 9;
const int Lampe5 = 10;
const int Lampe6 = 11;
//Interupteur
const int ILS = 2;
// Duree d'eclairage
int Duree1 = 1500;
int Duree2 = 1900;
int Duree3 = 2300;
int Duree4 = 3000;
int Duree5 = 8000;
//Divers
int Etatcycle = 0;
int Seuil = 0;
void setup() {
//Broches de sortie
pinMode(Lampe1, OUTPUT);
pinMode(Lampe2, OUTPUT);
pinMode(Lampe3, OUTPUT);
pinMode(Lampe4, OUTPUT);
pinMode(Lampe5, OUTPUT);
pinMode(Lampe6, OUTPUT);
//broche entree
pinMode(ILS, INPUT);
}
void loop() {
//PositionILS
Seuil = digitalRead(ILS);
// Soiree
if ((Seuil == HIGH) && (Etatcycle == LOW)) {
analogWrite(Lampe1, 75);
delay(Duree1);
analogWrite(Lampe3, 150);
delay(Duree3);
analogWrite(Lampe2, 55);
analogWrite(Lampe1, 135);
delay(Duree1);
analogWrite(Lampe2, 75);
analogWrite(Lampe4, 99);
delay(Duree3);
analogWrite(Lampe2, 0);
analogWrite(Lampe3, 155);
analogWrite(Lampe4, 200);
delay(Duree4);
analogWrite(Lampe3, 200);
delay(Duree3);
analogWrite(Lampe2, 200);
delay(Duree3);
analogWrite(Lampe1, 205);
delay(Duree4);
Etatcycle = 1;
delay(Duree1);
}
//PassageNuit
if ((Seuil == HIGH) && (Etatcycle == HIGH)) {
analogWrite(Lampe6, 80);
delay(Duree1);
analogWrite(Lampe5, 175);
delay(Duree5);
analogWrite(Lampe1, 0);
delay(Duree1);
analogWrite(Lampe4, 0);
delay(Duree2);
analogWrite(Lampe2, 0);
delay(Duree1);
analogWrite(Lampe3, 0);
delay(Duree4);
Etatcycle = 1;
}
//Journee
if ((Seuil == LOW) && (Etatcycle = HIGH)) {
delay(Duree5);
analogWrite(Lampe5, 0);
delay(Duree1);
analogWrite(Lampe6, 0);
Etatcycle = 0;
delay(Duree1);
}
}
```
Cela faisait plus de 2 ans que je n'avais rien écrit .
Donc au début les erreurs furent nombreuses.
Je vais essayer de reprendre un peu la partie de l'allumage des portes .