ECE3872 HW/SW Project Code
Dependencies: mbed Servo mbed-rtos 4DGL-uLCD-SE PinDetect X_NUCLEO_53L0A1
motor_ctl.h
- Committer:
- trmontgomery
- Date:
- 2020-04-14
- Revision:
- 26:2063ee8419cc
- Parent:
- 25:7764baddb7bc
File content as of revision 26:2063ee8419cc:
#include "mbed.h" #include "Servo.h" #include "rtos.h" #include <string> Servo r_arm(p24); Servo l_arm(p23); Servo r_leg(p22); Servo l_leg(p21); Thread t_r_arm; Thread t_l_arm; Thread t_r_leg; Thread t_l_leg; #define DUR 200 vector<string> move_map; //initialized in main string note; void la_dance() { switch(note[0]){ case 0: l_arm.write(1.0); break; case 1: l_arm.write(0.0); break; } Thread::wait(DUR); } void ra_dance() { switch(note[1]){ case '0': r_arm.write(1.0); break; case '1': r_arm.write(0.0); break; } Thread::wait(DUR); } void ll_dance() { switch(note[2]){ case 1: r_leg.write(1.0); break; case 2: r_leg.write(0.6); break; case 3: r_leg.write(0.1); break; } Thread::wait(DUR); } void rl_dance() { switch(note[3]){ case 1: l_leg.write(1.0); break; case 2: l_leg.write(0.6); break; case 3: l_leg.write(0.1); break; } Thread::wait(DUR); } void puppet_move(){ t_r_arm.start(ra_dance); t_l_arm.start(la_dance); t_r_leg.start(rl_dance); t_l_leg.start(ll_dance); }