|
|
@@ -64,32 +64,141 @@ WidgetLED led1(V11) // Led Tech bas
|
|
|
void setup(){
|
|
|
// Debug console
|
|
|
Serial.begin(9600);
|
|
|
-
|
|
|
Blynk.begin(auth, ssid, pass);
|
|
|
-
|
|
|
timer.setInterval(1000L, statusOrdi); //Configuration du timer pour que toute les seconde ils appelles la fonction de status.
|
|
|
-
|
|
|
+}
|
|
|
+
|
|
|
+void loop(){
|
|
|
+ Blynk.run();
|
|
|
+ timer.run();
|
|
|
}
|
|
|
|
|
|
void statusOrdi(){
|
|
|
- uint8_t tab[7];
|
|
|
- //SPI_Status(tab);
|
|
|
+ uint8_t tab[7];
|
|
|
+ //SPI_Status(tab); //Lecture du status de l'ordinateur
|
|
|
+
|
|
|
+ //Transmission des donnée et notification si probleme
|
|
|
+ Blynk.virtualWrite(8, tab[1]); //On transmet a blynk sur la broche v8 la valeur de la température de l'air
|
|
|
+ if (tab[1]<18)
|
|
|
+ Blynk.notify("Temérature air trop froid");
|
|
|
+ else (tab[1]>29)
|
|
|
+ Blynk.notify("Temérature air trop Chaud");
|
|
|
+
|
|
|
+ Blynk.virtualWrite(9, tab[2]);
|
|
|
+ if (tab[1]<23)
|
|
|
+ Blynk.notify("Temérature Eau trop froid");
|
|
|
+ else (tab[1]>29)
|
|
|
+ Blynk.notify("Temérature Eau trop Chaud");
|
|
|
+
|
|
|
+ Blynk.virtualWrite(10, tab[3]);
|
|
|
+
|
|
|
+ if (tab[1]<7.5)
|
|
|
+ Blynk.notify("PH trop bas");
|
|
|
+ else (tab[1]>8.5)
|
|
|
+ Blynk.notify("PH trop Haut");
|
|
|
+
|
|
|
+
|
|
|
+ if((tab[4] & MASK_TB) = MASK_TB)
|
|
|
+ led1.on();
|
|
|
+ else
|
|
|
+ led1.off();
|
|
|
+
|
|
|
+ if((tab[4] & MASK_TH) = MASK_TH)
|
|
|
+ led2.on();
|
|
|
+ Blynk.notify("Cuve technique haut");
|
|
|
+ else
|
|
|
+ led2.off();
|
|
|
+
|
|
|
+ if((tab[4] & MASK_CH) = MASK_CH)
|
|
|
+ led3.on();
|
|
|
+ else
|
|
|
+ led3.off();
|
|
|
+
|
|
|
+ if((tab[4] & MASK_RB) = MASK_RB)
|
|
|
+ led4.on();
|
|
|
+ Blynk.notify("Reserve bas");
|
|
|
+ else
|
|
|
+ led4.off();
|
|
|
+
|
|
|
+ if((tab[4] & MASK_A1) = MASK_A1)
|
|
|
+ led5.on();
|
|
|
+ else
|
|
|
+ led5.off();
|
|
|
+
|
|
|
+ if((tab[4] & MASK_A2) = MASK_A2)
|
|
|
+ led6.on();
|
|
|
+ else
|
|
|
+ led6.off();
|
|
|
+// reste a transmetre la dernoiere osmolation
|
|
|
+}
|
|
|
|
|
|
- //Transmission des donnée
|
|
|
- Blynk.virtualWrite(8, tab[1]); //On transmet a blynk sur la broche v8 la valeur de la température de l'air
|
|
|
- Blynk.virtualWrite(9, tab[2]);
|
|
|
- Blynk.virtualWrite(10, tab[3]);
|
|
|
|
|
|
- if((tab[4]&MASK_TB) = MASK_TB)
|
|
|
- led1.on();
|
|
|
- else
|
|
|
+BLYNK_WRITE(V0){ //Bouton Ecumeur
|
|
|
+ uint8_t data;
|
|
|
+ Read_actionneur(data);
|
|
|
+ if (param.asInt())
|
|
|
+ data = data | MASK_ECU;
|
|
|
+ else {
|
|
|
+ data = data & (!MASK_ECU);
|
|
|
+ Write_actionneur(data);
|
|
|
+}
|
|
|
|
|
|
- //Notification si Probleme
|
|
|
+BLYNK_WRITE(V1){ //Bouton Remonter
|
|
|
+ uint8_t data;
|
|
|
+ Read_actionneur(data);
|
|
|
+ if (param.asInt())
|
|
|
+ data = data | MASK_ECU;
|
|
|
+ else {
|
|
|
+ data = data & (!MASK_ECU);
|
|
|
+ Write_actionneur(data);
|
|
|
+}
|
|
|
|
|
|
-
|
|
|
+BLYNK_WRITE(V2){ //Bouton Chauffage
|
|
|
+ uint8_t data;
|
|
|
+ Read_actionneur(data);
|
|
|
+ if (param.asInt())
|
|
|
+ data = data | MASK_ECU;
|
|
|
+ else {
|
|
|
+ data = data & (!MASK_ECU);
|
|
|
+ Write_actionneur(data);
|
|
|
}
|
|
|
|
|
|
-void loop()
|
|
|
-{
|
|
|
- Blynk.run();
|
|
|
+BLYNK_WRITE(V3){ //Bouton Brassage1
|
|
|
+ uint8_t data;
|
|
|
+ Read_actionneur(data);
|
|
|
+ if (param.asInt())
|
|
|
+ data = data | MASK_ECU;
|
|
|
+ else {
|
|
|
+ data = data & (!MASK_ECU);
|
|
|
+ Write_actionneur(data);
|
|
|
+}
|
|
|
+
|
|
|
+BLYNK_WRITE(V4){ //Bouton Brassage2
|
|
|
+ uint8_t data;
|
|
|
+ Read_actionneur(data);
|
|
|
+ if (param.asInt())
|
|
|
+ data = data | MASK_ECU;
|
|
|
+ else {
|
|
|
+ data = data & (!MASK_ECU);
|
|
|
+ Write_actionneur(data);
|
|
|
+}
|
|
|
+
|
|
|
+BLYNK_WRITE(V20){ //Bouton Osmolateur
|
|
|
+
|
|
|
}
|
|
|
+
|
|
|
+BLYNK_WRITE(V5){ //Ventilateur 1
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+BLYNK_WRITE(V6){ //Ventilateur 3
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+BLYNK_WRITE(V7){ //Ventilateur 3
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|