ultimaact

Dependencies:   mbed Adafruit_GFX DS1820

Revision:
5:0e6b049208d8
Parent:
4:aa8a5a606384
Child:
6:23dfd7b0e58c
--- a/main.cpp	Mon Dec 13 11:00:09 2021 +0000
+++ b/main.cpp	Mon Dec 13 19:09:00 2021 +0000
@@ -14,6 +14,9 @@
 DigitalOut dir(D12);
 DigitalOut enable(D11);
 
+int contador=0;
+
+
 enum estados {cerrada, abriendose, cerrandose, abierta};
 estados estado;
 
@@ -34,23 +37,23 @@
 
 void estadoCerrada()
 {
-    if( (finalIzq == 1) && finalDer ==1) {
-        wait(2.0);
+   
+    if( (finalIzq == 1) && contador <3) {
+        wait(1.0);
         enable=1;
         estado=abriendose;
        // pc.printf("Distance =%d\n",distancia);
         pc.printf("Final2 pulsado\r\n");
         
        
-        //distancia < 5
-        
-        
+        //distancia < 5 
     }
+    
 }
 
 void estadoAbriendose()
 {
-    pc.printf("Distance =%d\n",distancia);
+    //pc.printf("Distance =%d\n",distancia);
     if((finalDer==1)) {
         
         estado=abierta;
@@ -62,6 +65,10 @@
         //pc.printf("paso\n");
         
     }
+  //  if (distancia<4){
+        //estado=cerrandose;
+        
+       // }
 }
 
 void estadoCerrandose(){
@@ -81,14 +88,15 @@
 void estadoAbierta()
 {
     //pc.printf("Distance =%d\n",distancia);
-    if (finalDer==1) {
+    //if (finalDer==1) {
         
         
         enable=1;
         estado=cerrandose;
         pc.printf("Final1 pulsado\r\n");
         
-    }
+    //}
+    contador++;
 }
 
 int main()
@@ -96,6 +104,7 @@
     pc.baud(115200);
     tickerMideDistancia.attach(&mideDistancia, 0.5);
     estado=cerrada;
+    
     //pc.printf("Estado cerrada\n");
     
     while(1) {