Acercamiento a lo que pide el profe

Dependencies:   mbed

Fork of 01-01EjercicioFuncionXY by ferney alberto beltran molina

Tomando como base los ejemplos que el Ing. Ferney subió, realizamos este primer acercamiento al objetivo del primer corte.

en síntesis se generó el código de guardar y ejecutar.

Slds!

Files at this revision

API Documentation at this revision

Comitter:
Bethory
Date:
Wed Mar 14 05:17:52 2018 +0000
Parent:
4:8a884a5dd8c8
Child:
6:87a37f4163bd
Commit message:
Lista la parte de guardar

Changed in this revision

01_main.cpp Show annotated file Show diff for this revision Revisions of this file
--- 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;