Marlon Daniel Quiroga / Mbed 2 deprecated Entrega2crte5

Dependencies:   mbed

Files at this revision

API Documentation at this revision

Comitter:
MarlonQ
Date:
Fri Apr 12 02:06:11 2019 +0000
Parent:
2:0cc71fa2f3fd
Commit message:
Entrega segundo corte;

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/main.cpp	Thu Apr 04 23:38:54 2019 +0000
+++ b/main.cpp	Fri Apr 12 02:06:11 2019 +0000
@@ -29,8 +29,8 @@
 Serial command(USBTX, USBRX);
 DigitalOut stepper_step(PB_4);
 DigitalOut steppeer_dir(PB_5);
-DigitalOut stepper_step1(PB_6);
-DigitalOut steppeer_dir1(PB_7);
+DigitalOut stepper_step2(PB_6);
+DigitalOut steppeer_dir2(PB_7);
 
 /*INGRESE LA CONFIGURACION DE LOS MOTORES*/
 
@@ -38,10 +38,10 @@
 
 
 // definición de las variables globales 
-uint32_t VELOCITY = 500 ; // Tiempo enmicro segundos
+uint32_t VELOCITY = 2500 ; // Tiempo enmicro segundos
 uint8_t N_pasos ;    // varable almacena el numero de pasos que se mueve el motor en leer_datos()
 uint8_t Coman ;    //variable que nosindica el movimiento del motor   
-
+int8_t Lectura [ ] = {} ; 
 // definición de las funciones
 void setup_uart();
 
@@ -55,7 +55,7 @@
     //command.printf("inicio de programa");
     while(1){    
         leer_datos();
-        mover_steper_nema( N_pasos , Coman );
+        mover_steper_nema( Lectura [ 1 ] , Lectura [ 0 ] );
     }    
 }
 
@@ -66,74 +66,135 @@
 
 
 void leer_datos(){
+    
     while(command.getc()!= INITCMD) ;
-    Coman = command.getc() ;
-    N_pasos = command.getc() ;
+    uint8_t i ;
+    for ( i = 0 ; i < 2 ; i++){
+        
+        Lectura [ i ] = command.getc(); 
+        printf ( " %4d ", Lectura [ i ]);
+        }
     
 }
 
 void mover_steper_nema( uint8_t num_pasos , uint8_t Coman ){
 
     uint8_t i = 0;
-    switch (Coman){
+    uint8_t j = 1;
+    
+    switch ( Coman ){
         
         case 5:
-        steppeer_dir = 1;
+        steppeer_dir = 1 ;
+        steppeer_dir2 = 0 ;
         wait_us( 1 );
         
-        for ( i= 0 ; i <= num_pasos ; i++ ){
+        for ( j ; j <= num_pasos ; j++){
+            
+            for ( i= 0 ; i <=  200 ; i++ ){
                  
-            stepper_step=1;
-            wait_us(VELOCITY);
-            stepper_step=0;
-            wait_us(VELOCITY);
+                stepper_step = 1 ; 
+                stepper_step2 = 1;
+                wait_us(VELOCITY);
+                stepper_step = 0;
+                stepper_step2 = 1;
+                wait_us(VELOCITY);
             
-        }    
+                } 
+                
+            }
+                
         break;
         
         case 6:
         steppeer_dir = 0;
+        steppeer_dir2 = 1;
         wait_us( 1 );
         
-        for ( i= 0 ; i <= num_pasos ; i++ ){
+        for ( j ; j <= num_pasos ; j++){
+            
+            for ( i= 0 ; i <=  200 ; i++ ){
                  
-            stepper_step=1;
-            wait_us(VELOCITY);
-            stepper_step=0;
-            wait_us(VELOCITY);
+                stepper_step = 1 ; 
+                stepper_step2 = 1;
+                wait_us(VELOCITY);
+                stepper_step = 0;
+                stepper_step2 = 1;
+                wait_us(VELOCITY);
             
-        }    
+                } 
+                
+            }
+                
         break;
         
         case 7:
+        
         steppeer_dir = 1;
         wait_us( 1 );
         
-        for ( i= 0 ; i <= 64 ; i++ ){
+        for ( j ; j <= num_pasos ; j++){
+            
+            for ( i= 0 ; i <= 50 ; i++ ){
                  
-            stepper_step=1;
-            wait_us(VELOCITY);
-            stepper_step=0;
-            wait_us(VELOCITY);
-        }
+                stepper_step = 1 ; 
+                stepper_step2 = 1;
+                wait_us(VELOCITY);
+                stepper_step = 0;
+                stepper_step2 = 1;
+                wait_us(VELOCITY);
+            
+                } 
+                
+            }
+            
         break;
         
         case 8:
         steppeer_dir = 0;
         wait_us( 1 );
         
-        for ( i= 0 ; i <= 64 ; i++ ){
+        for ( j ; j <= num_pasos ; j++){
+            
+            for ( i= 0 ; i <=  50 ; i++ ){
                  
-            stepper_step=1;
-            wait_us(VELOCITY);
-            stepper_step=0;
-            wait_us(VELOCITY);
-        }
+                stepper_step = 1 ; 
+                stepper_step2 = 1;
+                wait_us(VELOCITY);
+                stepper_step = 0;
+                stepper_step2 = 1;
+                wait_us(VELOCITY);
+            
+                } 
+                
+            }
+            
         break;
         
         case 9:
-        //VELOCITY = VELOCITY * num_pasos ;
+         
+         switch ( num_pasos ){
+             
+            case 1:
+             
+                VELOCITY = 400 ;
+                
+            break;
+             
+            case 2:
+             
+                VELOCITY = 2500 ;
+                
+            break;
+            
+            case 3:
+             
+                VELOCITY = 5000 ;
+                
+            break; 
+            
+             }
+         
         break;
     }      
-    
 }