#include #define OUVERT HIGH #define FERME LOW int NiveauBas = 2; int NiveauHaut = 3; int pistolet = 4; int POMPE = 6; int VanneRestricteur = 7; int VanneEau = 8; int POMPEREMONTER = 9; int R = 10; int G = 11; int B = 12; auto t_timer = timer_create_default(); // create a timer with default settings void setup() { //init les pins attachInterrupt(digitalPinToInterrupt(NiveauBas),Start,LOW); attachInterrupt(digitalPinToInterrupt(NiveauHaut),Stop,HIGH); } void loop() { if(digitalRead(pistolet)){ digitalWrite(POMPEREMONTER,OUVERT); } else{ digitalWrite(POMPEREMONTER,FERME); } } void Start(void){ t_timer.in(300000, closeVanne ); digitalWrite(VanneEau,OUVERT); digitalWrite(VanneRestricteur,OUVERT); digitalWrite(POMPE,OUVERT); } void Stop(void){ digitalWrite(VanneEau,FERME); digitalWrite(POMPE,FERME); } void closeVanne (void){ digitalWrite(VanneRestricteur,FERME); }