|
|
@@ -1,54 +1,92 @@
|
|
|
#include <arduino-timer.h>
|
|
|
|
|
|
-#define OUVERT HIGH
|
|
|
-#define FERME LOW
|
|
|
+#define OUVERT LOW
|
|
|
+#define FERME HIGH
|
|
|
|
|
|
-int NiveauBas = 2;
|
|
|
-int NiveauHaut = 3;
|
|
|
+int RAZ = 1;
|
|
|
+int NiveauBas = 3;
|
|
|
+int NiveauHaut = 2;
|
|
|
|
|
|
int pistolet = 4;
|
|
|
|
|
|
-int POMPE = 6;
|
|
|
-int VanneRestricteur = 7;
|
|
|
+int POMPE = 7;
|
|
|
+int VanneRestricteur = 6;
|
|
|
int VanneEau = 8;
|
|
|
-int POMPEREMONTER = 9;
|
|
|
+int POMPEREMONTER = 5;
|
|
|
|
|
|
-int R = 10;
|
|
|
-int G = 11;
|
|
|
-int B = 12;
|
|
|
+int R = 9;
|
|
|
+int G = 10;
|
|
|
+int B = 11;
|
|
|
|
|
|
|
|
|
auto t_timer = timer_create_default(); // create a timer with default settings
|
|
|
|
|
|
+
|
|
|
void setup() {
|
|
|
- //init les pins
|
|
|
+ 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);
|
|
|
|
|
|
- attachInterrupt(digitalPinToInterrupt(NiveauBas),Start,LOW);
|
|
|
- attachInterrupt(digitalPinToInterrupt(NiveauHaut),Stop,HIGH);
|
|
|
+ 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)){
|
|
|
+ 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){
|
|
|
- t_timer.in(300000, closeVanne );
|
|
|
+ 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){
|
|
|
- digitalWrite(VanneRestricteur,FERME);
|
|
|
+ Serial.println("coupe");
|
|
|
+ digitalWrite(VanneRestricteur,FERME);
|
|
|
}
|