David Beargie
/
vex_motor_USBcontrol
VEX robotics 393 motor control test
Diff: main.cpp
- Revision:
- 0:1719fc9a160e
- Child:
- 1:c41ae3b710a2
diff -r 000000000000 -r 1719fc9a160e main.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Tue Jan 28 20:25:41 2014 +0000 @@ -0,0 +1,112 @@ +//================================== +// Add any libraries that you use: +//================================== +#include "mbed.h" +#include "Servo.h" + + +//================================== +// Add variables: +//================================== + +//add a servo to PWM output on pin 25 +Servo myservo(p21); + +//add a variable for servo position +float position = 0.5; + +//add variables for the onboard LEDS, which display for each button +DigitalOut led1(LED1), led2(LED2), led3(LED3), led4(LED4); + + + +//================================== +// Functions for each button press +//================================== +/* + +// Functions for button 1 +void a_hit_interrupt (void) { + + //move servo motor + position = 1.0; + myservo = position; + + //Set LED 1 + led1 = 1, led2 = 0, led3 = 0, led4 = 0; +} + + + +// Functions for button 2 +void b_hit_interrupt (void) { + + //move servo motor + position = 0.0; + myservo = position; + //Set LED 2 + led1 = 0, led2 = 1, led3 = 0, led4 = 0; +} + + + +// Functions for button 3 +void c_hit_interrupt (void) { + + //Set LED 3 + led1 = 0, led2 = 0, led3 = 1, led4 = 0; +} + + + +// Functions for button 4 +void d_hit_interrupt (void) { + + //Set LED 4 + led1 = 0, led2 = 0, led3 = 0, led4 = 1; +} + + + +//========================================================== +// MAIN FUNCTION +// waits for button press, then uses the button code above +//========================================================== +*/ +int main() { +/* + //tune range depending on servo motor + float range = 0.0009; + + // Use internal pullup resistors to limit the signal current + a.mode(PullUp); + b.mode(PullUp); + c.mode(PullUp); + d.mode(PullUp); + + // Delay for initial pullup switching to take effect + wait(.01); + + // tells the code what function should be called for each switch press + a.fall(&a_hit_interrupt); + b.fall(&b_hit_interrupt); + c.fall(&c_hit_interrupt); + d.fall(&d_hit_interrupt); + + + while(1) { + //set the servo to use the set value + myservo.calibrate(range, 45.0); + + //reset LEDs + led1 = 0, led2 = 0, led3 = 0, led4 = 0; + + } + */ + myservo = position; + wait(1); + while (1){ + myservo = myservo+0.01; + wait(0.1); + } +}