program 1 driver
Dependencies: mbed motorController2
Revision 5:f2edd689cc38, committed 2017-02-28
- 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 |
diff -r 6956b568c810 -r f2edd689cc38 main.cpp --- 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