wss

Dependencies:   mbed Adafruit_GFX DS1820

Revision:
17:74282523ba3e
Parent:
16:d49a029f2a1b
--- a/main.cpp	Tue Dec 14 15:56:56 2021 +0000
+++ b/main.cpp	Tue Dec 14 18:48:15 2021 +0000
@@ -45,7 +45,7 @@
 
 float       temp = 0;
 int contador=0;
-
+int taladro =0;
 
 int x=0;
 int y=0;
@@ -101,17 +101,29 @@
 
 
     if(y==1) {
-        if(finalIzq == 1 && boton==1) {
+       if(boton==1){
+        taladro=0;
+        }
+       if( (finalIzq == 1) && (boton==1)) {
+        enable=1;
+        estado=abriendose;
+        
+        }
 
-            enable=1;
-            tiempo.reset();
-            tiempo.start();
-            estado=abriendose;
-        }
-    }
+       
+    else if (taladro>0 && taladro <6){
+    
+        estado=abriendose;   
+        
+        
+    } 
+        tiempo.reset();
+        tiempo.start();
+    
 
 
 }
+}
 
 void estadoAbriendose()
 {
@@ -134,17 +146,28 @@
     //  if (distancia<4){
     //estado=cerrandose;
 
-    // }
+    
     if(y==1) {
 
-
-        if(tiempo.read()<0.5) {
-            paso(1);
-        } else if(finalIzq==0) {
-            paso(0);
-        } else {
-            estado=cerrada;
-        }
+        if(tiempo.read() > 3 ){
+        
+        taladro++;
+        estado=abierta;
+        enable=0;
+        
+    }
+        
+    else if ((taladro>0)  && (tiempo.read() > 0.6)){
+    
+        taladro++;
+        estado=abierta;
+        enable=0;         
+    }
+    else  {
+        
+        paso(1);    
+           
+    }
 
     }
 
@@ -166,6 +189,27 @@
 
         }
     }
+    if (y==1){
+        if((tiempo.read() > 0.6) && taladro<6) {
+        
+        
+        estado=cerrada;   
+    } 
+        
+    else if ((taladro==6)&& (finalIzq==1)){
+    
+    estado = cerrada;
+    enable = 0; 
+    contador=0;  
+    }
+    
+    
+    else {
+        
+        paso(0);
+        
+        }
+        }
 
 
 }
@@ -175,7 +219,7 @@
     //pc.printf("Distance =%d\n",distancia);
     //if (finalDer==1) {
 
-
+if (x==1){
     enable=1;
     estado=cerrandose;
     pc.printf("Final1 pulsado\r\n");
@@ -188,7 +232,15 @@
     gOled.display();
     gOled.setTextCursor(0,0);
  pc.printf("temp = %3.1f C\r\n", temp);
+}
 
+if(y==1){
+    tiempo.reset();
+        tiempo.start(); 
+
+        enable=1;
+        estado=cerrandose;
+    }
 
 }