Test code
Dependencies: mbed Motor Servo
main.cpp
- Committer:
- m215910
- Date:
- 2018-10-12
- Revision:
- 2:17956bff3ff2
- Parent:
- 1:bd813dd636a9
- Child:
- 3:638dced18d87
File content as of revision 2:17956bff3ff2:
//Maria Satre, Riki Gagnon, Theo Boskov, Janelle Stewart //Project 2 //Goat Launcher //Libraries and mechanical directives #include "Motor.h" //must change line 31 in Motor.cpp according to Lab #include "mbed.h" #include "Servo.h" //need Servo library Motor m(p29, p30, p26); //designates the pins used by the motor Servo servo1(p21); Servo servo2(p22); DigitalIn sw1(p16); //switches or buttons DigitalIn bu1(p24); //Army man //DigitalIn bu2(p); //Army man //DigitalIn bu3(p); //Army man //DigitalIn bu4(p); //Motor clockwise //DigitalIn bu5(p); //Motor CC DigitalOut leds[3]={p25, p26, p27}; float pos = rand()/(float)RAND_MAX; //allows the servo to start at a random position float pos2 = rand()/(float)RAND_MAX; int sw1state, bu1state, bu2state, bu3state, bu4state, bu5state; //the state of the switch int s=0.2; //speed of motor rotation - fairly slow so as to be exact int main() { servo1.calibrate(0.0009, 90.0); //need to calibrate the servos so they don't freak out servo2.calibrate(0.0009, 90.0); servo1=pos; //used to help calibrate servo2=pos2; while(1) { //do we need while? sw1state=sw1.read(); //read in switch state bu1state=bu1.read(); //bu2state=bu2.read(); //bu3state=bu3.read(); //bu4state=bu4.read(); //bu5state=bu5.read(); pos=0; pos2=0; if (sw1state == 1) { //if bu4 is on rotate motor fwd m.speed(s); s=1;} if (sw1state == 0) { //if bu5 is on rotate motor rev m.speed(-s); s=0;} if (bu1state == 0) { //if ARMY button is off light up LEDS leds[0]=1;} if (bu2state == 0) { leds[1]=1;} if (bu3state == 0) { leds[2]=1;} if (bu1state == 1) { //if ARMY button is on nothing happens - ARMY guys with weight on LEDS leds[0]=0;} if (bu2state == 1) { leds[1]=0;} if (bu3state == 1) { leds[2]=0;} //if((sw1state) == 1) { //if switch is on move servos quickly to other angle // (pos && pos2) = 1;} //if((sw1state) == 1) { //if switch is off move back // (pos && pos2) = 0;} } //end while } //end main