First release.
Dependencies: FXOS8700CQ SDFileSystem mbed
Final program
- Controling a robot by Bluetooth, it is capable of making 90° turns and move pre-defined distances.
Code by:
- Mayumi Hori
- Sarahí Morán
- Gerardo Carmona
my_libraries/motors.cpp@5:b384cf06de76, 2014-11-07 (annotated)
- Committer:
- gerardo_carmona
- Date:
- Fri Nov 07 05:12:50 2014 +0000
- Revision:
- 5:b384cf06de76
- Parent:
- 3:bd16e43ad7be
Not finished!
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
gerardo_carmona | 0:3a322aad8c88 | 1 | // ----- Libraries ------------------------------------------------------------------ |
gerardo_carmona | 0:3a322aad8c88 | 2 | #include "mbed.h" |
gerardo_carmona | 0:3a322aad8c88 | 3 | #include "motors.h" |
gerardo_carmona | 0:3a322aad8c88 | 4 | |
gerardo_carmona | 0:3a322aad8c88 | 5 | // ----- I/O Pins ------------------------------------------------------------------- |
gerardo_carmona | 0:3a322aad8c88 | 6 | // MOTORS (Control) |
gerardo_carmona | 5:b384cf06de76 | 7 | DigitalOut dir_left(D5); |
gerardo_carmona | 5:b384cf06de76 | 8 | DigitalOut dir_right(D6); |
gerardo_carmona | 0:3a322aad8c88 | 9 | PwmOut pwm_left(D9); |
gerardo_carmona | 0:3a322aad8c88 | 10 | PwmOut pwm_right(D10); |
gerardo_carmona | 0:3a322aad8c88 | 11 | |
gerardo_carmona | 0:3a322aad8c88 | 12 | // ----- Functions ------------------------------------------------------------------ |
gerardo_carmona | 0:3a322aad8c88 | 13 | |
gerardo_carmona | 0:3a322aad8c88 | 14 | void motor_fwd(int _power_left, int _power_right){ |
gerardo_carmona | 0:3a322aad8c88 | 15 | dir_left = 1; |
gerardo_carmona | 0:3a322aad8c88 | 16 | dir_right = 1; |
gerardo_carmona | 0:3a322aad8c88 | 17 | pwm_left = (float)_power_left/100; |
gerardo_carmona | 0:3a322aad8c88 | 18 | pwm_right = (float)_power_right/100; |
gerardo_carmona | 0:3a322aad8c88 | 19 | //pc.printf("FWD\n"); |
gerardo_carmona | 0:3a322aad8c88 | 20 | } |
gerardo_carmona | 0:3a322aad8c88 | 21 | |
gerardo_carmona | 0:3a322aad8c88 | 22 | void motor_rev(int _power_left, int _power_right){ |
gerardo_carmona | 0:3a322aad8c88 | 23 | dir_left = 0; |
gerardo_carmona | 0:3a322aad8c88 | 24 | dir_right = 0; |
gerardo_carmona | 0:3a322aad8c88 | 25 | pwm_left = (float)_power_left/100; |
gerardo_carmona | 0:3a322aad8c88 | 26 | pwm_right = (float)_power_right/100; |
gerardo_carmona | 0:3a322aad8c88 | 27 | //pc.printf("REV\n"); |
gerardo_carmona | 0:3a322aad8c88 | 28 | } |
gerardo_carmona | 0:3a322aad8c88 | 29 | |
gerardo_carmona | 0:3a322aad8c88 | 30 | void motor_left(int _power_left, int _power_right){ |
gerardo_carmona | 0:3a322aad8c88 | 31 | dir_left = 0; |
gerardo_carmona | 0:3a322aad8c88 | 32 | dir_right = 1; |
gerardo_carmona | 0:3a322aad8c88 | 33 | pwm_left = (float)_power_left/100; |
gerardo_carmona | 0:3a322aad8c88 | 34 | pwm_right = (float)_power_right/100; |
gerardo_carmona | 0:3a322aad8c88 | 35 | //pc.printf("LEFT\n"); |
gerardo_carmona | 0:3a322aad8c88 | 36 | } |
gerardo_carmona | 0:3a322aad8c88 | 37 | |
gerardo_carmona | 0:3a322aad8c88 | 38 | void motor_right(int _power_left, int _power_right){ |
gerardo_carmona | 0:3a322aad8c88 | 39 | dir_left = 1; |
gerardo_carmona | 0:3a322aad8c88 | 40 | dir_right = 0; |
gerardo_carmona | 0:3a322aad8c88 | 41 | pwm_left = (float)_power_left/100; |
gerardo_carmona | 0:3a322aad8c88 | 42 | pwm_right = (float)_power_right/100; |
gerardo_carmona | 0:3a322aad8c88 | 43 | //pc.printf("RIGHT\n"); |
gerardo_carmona | 0:3a322aad8c88 | 44 | } |
gerardo_carmona | 0:3a322aad8c88 | 45 | |
gerardo_carmona | 0:3a322aad8c88 | 46 | void motor_stop(){ |
gerardo_carmona | 0:3a322aad8c88 | 47 | dir_left = 1; |
gerardo_carmona | 0:3a322aad8c88 | 48 | dir_right = 1; |
gerardo_carmona | 0:3a322aad8c88 | 49 | pwm_left = 0; |
gerardo_carmona | 0:3a322aad8c88 | 50 | pwm_right = 0; |
gerardo_carmona | 0:3a322aad8c88 | 51 | //pc.printf("STOP\n"); |
gerardo_carmona | 3:bd16e43ad7be | 52 | } |