Giro en su propio eje Presentado por: Julio Fajardo, Cesar Pacheco, Angel Trujillo, Daniel Vizcaya

Dependencies:   mbed

Fork of 01_Embebidos by Daniel Vizcaya

Revision:
5:8e100835b017
Parent:
4:8a884a5dd8c8
Child:
6:87a37f4163bd
--- a/01_main.cpp	Wed Mar 14 04:57:30 2018 +0000
+++ b/01_main.cpp	Wed Mar 14 05:17:52 2018 +0000
@@ -45,48 +45,52 @@
 
 void ejecutar(){
     command.printf("se inicia el comando de ejecutar...\n");
-    /*for(int i=1;i<=MEM_SIZE;i++){
-        command.printf("%x\n",buffer[i]);
-    }*/
+    for(int j=0;j<=mem_head;j++){
+        command.printf("%x\n",buffer[j]);
+    }
 }
 
 void guardar(){
     command.printf("se inicia el comando de guardar...\n");
-    uint32_t val; //significa que la variable "val" es del tipo uint32_t
+    MEM_TYPE val; //significa que la variable "val" es del tipo uint32_t
     char dato1,dato2;
-    
-    dato1=command.getc();
-    if(dato1==CM_STOP){
-        dato2=command.getc();
-        if(dato2==CM_ENTER){
-            val=dato1;
-            return;
+    do{
+        dato1=command.getc();
+        if(dato1==CM_STOP){
+            dato2=command.getc();
+            if(dato2==CM_ENTER){
+                val=dato1;
+                mem_put(val);
+                return;
+            }
         }
-    }
-    if(dato1==CM_NODRAW|dato1==CM_DRAW){
-        dato2=command.getc();
-        if(dato2==CM_ENTER){
-            val=dato1;
+        if(dato1==CM_NODRAW|dato1==CM_DRAW){
+            dato2=command.getc();
+            if(dato2==CM_ENTER){
+                val=dato1;
+                mem_put(val);
+            }
         }
-    }
-    if(dato1==CM_VERTEX2D){
-        dato2=command.getc();
-        if(dato2<=0x32){
-            val=CM_VERTEX2D;
-            val=val<<8;
-            val=val|dato2;
+        if(dato1==CM_VERTEX2D){
             dato2=command.getc();
             if(dato2<=0x32){
+                val=CM_VERTEX2D;
                 val=val<<8;
                 val=val|dato2;
                 dato2=command.getc();
-                if(dato2==CM_ENTER){
+                if(dato2<=0x32){
                     val=val<<8;
-                    val=val|CM_ENTER;
-                }
-            }  
-        }     
-    }
+                    val=val|dato2;
+                    dato2=command.getc();
+                    if(dato2==CM_ENTER){
+                        val=val<<8;
+                        val=val|CM_ENTER;
+                        mem_put(val);
+                    }
+                }  
+            }     
+        }
+    }while(!full);        
 }
 
 int main(){
@@ -98,10 +102,6 @@
     while(1){
         read_cc=command.getc();
         switch (read_cc){
-            //case CM_STOP: command.printf("comando no válido en este momento");break; //FA
-            //case CM_NODRAW: guardar(read_cc);break; //FB
-            //case CM_DRAW: guardar(read_cc);break; //FC
-            //case CM_VERTEX2D: command.printf("comando no válido en este momento");break; //FD
             case CM_GUARDAR: guardar(); break; //FE
             case CM_EJECUTAR: ejecutar(); break;  //FF
             default: command.printf("Error de comando \n");break;