#include #define OUVERT LOW #define FERME HIGH int RAZ = 1; int NiveauBas = 3; int NiveauHaut = 2; int pistolet = 4; int POMPE = 7; int VanneRestricteur = 6; int VanneEau = 8; int POMPEREMONTER = 5; int R = 9; int G = 10; int B = 11; auto t_timer = timer_create_default(); // create a timer with default settings void setup() { Serial.begin(9600); Serial.println("Lance"); pinMode(NiveauBas, INPUT); pinMode(NiveauHaut, INPUT); pinMode(pistolet, INPUT); pinMode(POMPE, OUTPUT); pinMode(VanneRestricteur, OUTPUT); pinMode(VanneEau, OUTPUT); pinMode(POMPEREMONTER, OUTPUT); pinMode(R, OUTPUT); pinMode(G, OUTPUT); pinMode(B, OUTPUT); digitalWrite(POMPE, HIGH); digitalWrite(VanneRestricteur, HIGH); digitalWrite(VanneEau, HIGH); digitalWrite(POMPEREMONTER, HIGH); } void loop() { if(digitalRead(pistolet)==0 & digitalRead(NiveauBas)){ digitalWrite(POMPEREMONTER,OUVERT); } else{ digitalWrite(POMPEREMONTER,FERME); } if(digitalRead(NiveauBas)==0 & RAZ==1){ RAZ=0; Start(); } if(digitalRead(NiveauHaut)==1){ Serial.println("Glitch"); t_timer.in(1000, Test ); } t_timer.tick(); } void Test(void){ if(digitalRead(NiveauHaut)==1) Stop(); } void Start(void){ Serial.println("start"); t_timer.in(60000, closeVanne ); digitalWrite(VanneEau,OUVERT); digitalWrite(VanneRestricteur,OUVERT); digitalWrite(POMPE,OUVERT); } void Stop(void){ RAZ=1; Serial.println("stop"); digitalWrite(VanneEau,FERME); digitalWrite(POMPE,FERME); } void closeVanne (void){ Serial.println("coupe"); digitalWrite(VanneRestricteur,FERME); }