program 1 driver

Dependencies:   mbed motorController2

Files at this revision

API Documentation at this revision

Comitter:
BalB
Date:
Tue Feb 28 10:08:52 2017 +0000
Parent:
4:6956b568c810
Commit message:
1st version working - Serial with Matlab

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/main.cpp	Tue Feb 14 22:50:24 2017 +0000
+++ b/main.cpp	Tue Feb 28 10:08:52 2017 +0000
@@ -1,7 +1,6 @@
 #include "mbed.h"
 #include "math.h"
 #include "DigitalInOut.h"
-
 /* Como el movimiento de los motores lo hace el arduino y las medidas la stm32 tienen que coordinarse de alguna manera
    Este codigo tiene que hacer las medidas cuando le llegue un 1 por el puerto digital input 13 ,significa q los motores ya estan en posición
    Cuando acabe de medir, enviar un 1 por el puerto digital output 12 , le dice al arduino q ha acabado y tiene q cambiar la posición
@@ -57,7 +56,8 @@
 int val_var_top_right=0;    //Variance Value for this PH
 int val_var_bot_left=0;     //Variance Value for this PH
 int val_var_bot_right=0;    //Variance Value for this PH
-
+char c;
+char checker;
 
 
 
@@ -74,22 +74,23 @@
 
 int main()
 {
-   pc.printf("\n\r\n\rSTART program\n\r");
-
+    
     pc.printf("\n\r\n\rSTART program\n\r");
     pc.printf("\n mitja_esquerra_adalt , var_top_left , mitja_dreta_adalt , var_top_right , mitja_esquerra_abaix , var_bot_left , mitja_dreta_abaix , var_bot_right\n");
-    medir.write(0);
-    mover.write(1);
     end.write(0);
-    while(end.read()!=1) {
+    checker='2';
+    c='0';
+    while(1) {
 
         //mientras no este en la posicion, el arduino se esta moviendo, no se puede medir, se espera
-        while(medir.read()==0) {
+        c=pc.getc();
+        while(c=='0'){
+            c=pc.getc();
+            pc.printf("%c",c);
         }
 
         //cuando esta en posicion, medir
-        if(medir.read()==1) {
-            mover.write(0);// decir al arduino q aun no ha medido, no se puede mover
+        if(c!='0'){
             sum_top_left=0;
             sum_top_right=0;
             sum_bot_left=0;
@@ -136,23 +137,22 @@
 
 
             //PRINTEJAR RESULTATS
-            pc.printf("\n%d ,", mitja_esquerra_adalt);
-            pc.printf(" %d ,", val_var_top_left);
-            pc.printf(" %d ,", mitja_dreta_adalt);
-            pc.printf(" %d ,", val_var_top_right);
-            pc.printf(" %d ,", mitja_esquerra_abaix);
-            pc.printf(" %d ,", val_var_bot_left);
-            pc.printf(" %d ,", mitja_dreta_abaix);
-            pc.printf(" %d ,", val_var_bot_right);
+            //pc.printf("\n%d ,", mitja_esquerra_adalt);
+            //pc.printf(" %d ,", val_var_top_left);
+            //pc.printf(" %d ,", mitja_dreta_adalt);
+            //pc.printf(" %d ,", val_var_top_right);
+            //pc.printf(" %d ,", mitja_esquerra_abaix);
+            //pc.printf(" %d ,", val_var_bot_left);
+            //pc.printf(" %d ,", mitja_dreta_abaix);
+            //pc.printf(" %d ,", val_var_bot_right);
             
             
         }
-        
-        
-        mover.write(1); //ya ha medido, decir al arduino que cambie la posicion
-        //wait_ms(1000); //esperar por si acaso
+        c='0';
+        pc.printf("Measures finished\n");
+        wait_ms(1000); //esperar por si acaso
         //para asegurar que la stm se espere hasta que cambien la posicion
-        medir.write(0);//decir que el arduino se esta moviendo, no tomar medidas
+
     }
 }
     
\ No newline at end of file