ESTE ES EL CODIGO QUE SI FUNCIONA A LA PERFECCION Y EL CUAL TRABAJARE EL 13/5 PARA RENDIR EL EXAMEN

Dependencies:   mbed tsi_sensor MMA8451Q

Revision:
1:1768474cf36d
Parent:
0:5b043619ecb8
diff -r 5b043619ecb8 -r 1768474cf36d main.cpp
--- a/main.cpp	Mon May 11 20:47:54 2020 +0000
+++ b/main.cpp	Tue May 12 03:34:57 2020 +0000
@@ -109,7 +109,7 @@
 //Ejecutar onCharReceived por cada entrada por puerto
     pc.attach(&onCharReceived);
     while (true) {
-         
+        
         n=tactil();
         if(n==1) {
             ESTADO_TRANSMICION=1;
@@ -120,7 +120,7 @@
         }
         if(newdata) {
             newdata = false;
-
+            
             switch (ESTADO_GENERAL) {
                 default:
                     ESTADO_GENERAL=INICIO;
@@ -130,7 +130,7 @@
                         ESTADO_GENERAL=ORDEN;
                         break;
                     } else {
-                        
+                        c='\0';
                         ESTADO_GENERAL = INICIO;
                         break;
                     }
@@ -160,24 +160,29 @@
                         PROTOCOLO = 5;
                         break;
                     } else {
-                        
+                        c='\0';
                         ESTADO_GENERAL = INICIO;
                         break;
                     }
                 case FIN:
                     if (c==')') {
-                        ESTADO_GENERAL = CALCULO;
+                        ESTADO_GENERAL = INICIO;
                         c='\0';
                         
                         break;
                     } else {
-                        
+                        c='\0';
                         PROTOCOLO = 0;
                         ESTADO_GENERAL = INICIO;
                         break;
                     }
-                case CALCULO:
+                
                     
+            }
+        }
+        
+        if(PROTOCOLO!=0) {
+            
                     x = abs(acc.getAccX())*100;
                     y = abs(acc.getAccY())*100;
                     z = abs(acc.getAccZ())*100;
@@ -198,10 +203,7 @@
                         antirebote();
                         Dxor=5^digital;
                     }
-                    ESTADO_GENERAL = TRANSMICION;
-                    break;
-                case TRANSMICION:
-                    
+               
                     if(ESTADO_TRANSMICION==1) {
                         if(PROTOCOLO==1) {
                             printf("@1%d%x)\n",x,Xxor);
@@ -220,9 +222,10 @@
                             printf("@5%d%x)\n",digital,Dxor);
                         }
                     }
-                    ESTADO_GENERAL = INICIO;
-                    break;
-            }
+                   
+           
         }
+        PROTOCOLO=0;
+        
     }
 }