3FEN / Mbed 2 deprecated Motor2FULL_copy

Dependencies:   X_NUCLEO_IHM01A1 mbed Motori_ultrasuoni_prova

Fork of HelloWorld_IHM01A1_2Motors by ST

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "hcsr04.h"
00002 
00003 
00004 /* mbed specific header files. */
00005 #include "mbed.h"
00006 
00007 /* Helper header files. */
00008 #include "DevSPI.h"
00009 
00010 /* Component specific header files. */
00011 #include "L6474.h"
00012 
00013 
00014 /* Number of steps. */
00015 #define STEPS 3200
00016 
00017 /* Delay in milliseconds. */
00018 #define DELAY_1 2000
00019 #define DELAY_2 6000
00020 #define DELAY_3 8000
00021 
00022 /* Speed in pps (Pulses Per Second).
00023    In Full Step mode: 1 pps = 1 step/s).
00024    In 1/N Step Mode:  N pps = 1 step/s). */
00025 #define SPEED_1 2400
00026 #define SPEED_2 1200
00027 
00028 
00029 
00030 /* Motor Control Component. */
00031 
00032 L6474 *motor1;
00033 HCSR04 sensor(PB_8, PB_9);
00034 int distanza;
00035 
00036 
00037 /* Initializing SPI bus. */
00038  DevSPI dev_spi(D11, D12, D13);
00039  DigitalOut led(D11);
00040   /* Initializing Motor Control Components. */
00041 
00042    
00043 
00044  void thread(void const *args) {
00045     
00046 while (1)
00047     {
00048           
00049         // Avvia un impulso della durata di 10us sul pin di trigger
00050         sensor.start();
00051         
00052         // Aspetta prima della prossima lettura
00053         wait_ms(100); 
00054         
00055         // Stampa sulla seriale la misura della distanza in cm
00056         distanza = sensor.get_dist_cm();
00057         }
00058           if(distanza > 10)
00059             motor1->run(StepperMotor::FWD);
00060         else
00061             led = 0;
00062         }
00063            
00064     
00065 
00066 
00067 
00068 
00069 
00070 
00071 
00072     
00073 
00074     
00075    
00076 
00077    
00078    
00079