Presentation code for PROJECT #1 - ES200 Fall 2014

Dependencies:   Servo mbed Motor

Committer:
tsevcik08
Date:
Sun Oct 19 23:46:08 2014 +0000
Revision:
5:cf58a6bfdd7a
Parent:
4:0ed46a6cdf66
Child:
6:18052a74ae56
mother of god we did

Who changed what in which revision?

UserRevisionLine numberNew contents of line
cstab94 0:80cc8025b1c0 1 //MIDN 3/C W. O'Brien, D. Thompson-Sevcik, C. Stabler
cstab94 0:80cc8025b1c0 2 //Candy scooper program for Project #1, ES200 Fall 2014
cstab94 0:80cc8025b1c0 3 //Modifications: 9 OCT- Initial code
cstab94 0:80cc8025b1c0 4
cstab94 0:80cc8025b1c0 5 #include "mbed.h"
cstab94 0:80cc8025b1c0 6 #include "Motor.h"
cstab94 0:80cc8025b1c0 7 #include "Servo.h"
tsevcik08 5:cf58a6bfdd7a 8
tsevcik08 5:cf58a6bfdd7a 9 Motor kate(p26, p29, p30);
cstab94 4:0ed46a6cdf66 10 Servo arm(p21);
tsevcik08 5:cf58a6bfdd7a 11 Servo scoop(p22);
cstab94 4:0ed46a6cdf66 12 DigitalIn sw1(p16); //up
cstab94 4:0ed46a6cdf66 13 DigitalIn sw2(p17); //down
cstab94 4:0ed46a6cdf66 14 DigitalIn sw3(p18); //dump
cstab94 4:0ed46a6cdf66 15 DigitalIn sw4(p19);
cstab94 4:0ed46a6cdf66 16 DigitalIn sw5(p20);
cstab94 4:0ed46a6cdf66 17
cstab94 4:0ed46a6cdf66 18
tsevcik08 5:cf58a6bfdd7a 19 int main()
tsevcik08 5:cf58a6bfdd7a 20 {
cstab94 4:0ed46a6cdf66 21
cstab94 4:0ed46a6cdf66 22 float armpos;
cstab94 4:0ed46a6cdf66 23 float servopos;
cstab94 4:0ed46a6cdf66 24 float mspeed;
tsevcik08 5:cf58a6bfdd7a 25
tsevcik08 5:cf58a6bfdd7a 26 while(1) {
tsevcik08 5:cf58a6bfdd7a 27 if( sw4 == 1 && sw5 == 0 && sw1 == 0 && sw2 == 0 ) {
cstab94 4:0ed46a6cdf66 28 mspeed = 0.35;
cstab94 4:0ed46a6cdf66 29 kate.speed(mspeed);
cstab94 4:0ed46a6cdf66 30 wait(.03);
cstab94 4:0ed46a6cdf66 31 mspeed = 0.0;
cstab94 4:0ed46a6cdf66 32 kate.speed(mspeed);
cstab94 4:0ed46a6cdf66 33 wait(.05);
tsevcik08 5:cf58a6bfdd7a 34 } else if( sw5 == 1 && sw4 == 0 && sw1 == 0 && sw2 == 0) {
cstab94 4:0ed46a6cdf66 35 mspeed = -0.35;
cstab94 4:0ed46a6cdf66 36 kate.speed(mspeed);
cstab94 4:0ed46a6cdf66 37 wait(.03);
cstab94 4:0ed46a6cdf66 38 mspeed = 0.0;
cstab94 4:0ed46a6cdf66 39 kate.speed(mspeed);
cstab94 4:0ed46a6cdf66 40 wait(.05);
tsevcik08 5:cf58a6bfdd7a 41 } else if (sw3 == 1 && sw2 == 0 && sw1 == 0 && sw4 == 0 && sw5 == 0 ) {
tsevcik08 5:cf58a6bfdd7a 42 for (servopos = 0; servopos <= 1.0; servopos += 1.0) {
tsevcik08 5:cf58a6bfdd7a 43 scoop = servopos;
tsevcik08 5:cf58a6bfdd7a 44 }
tsevcik08 5:cf58a6bfdd7a 45 wait (1);
tsevcik08 5:cf58a6bfdd7a 46 } else if(sw1 == 1 && sw2 == 0 && sw5 == 0 && sw4 == 0 ) {
tsevcik08 5:cf58a6bfdd7a 47 armpos += .01;
tsevcik08 5:cf58a6bfdd7a 48 arm = armpos;
tsevcik08 5:cf58a6bfdd7a 49 wait(.05);
tsevcik08 5:cf58a6bfdd7a 50 } else if(sw2 == 1 && sw1 == 0 && sw4 == 0 && sw5 == 0) {
tsevcik08 5:cf58a6bfdd7a 51 armpos -= .01;
tsevcik08 5:cf58a6bfdd7a 52 arm = armpos;
tsevcik08 5:cf58a6bfdd7a 53 wait(.05);
tsevcik08 5:cf58a6bfdd7a 54 } else if (sw4 == 0 && sw1 == 0 && sw2 == 0 && sw3 == 0 && sw5 == 0) {
cstab94 4:0ed46a6cdf66 55 mspeed = 0.0;
cstab94 4:0ed46a6cdf66 56 kate.speed(mspeed);
tsevcik08 5:cf58a6bfdd7a 57 arm = armpos;
tsevcik08 5:cf58a6bfdd7a 58 wait(.1);
tsevcik08 5:cf58a6bfdd7a 59 for (servopos = 1.0; servopos >= 0; servopos -=1.0) {
tsevcik08 5:cf58a6bfdd7a 60 scoop = servopos;
tsevcik08 5:cf58a6bfdd7a 61 }
cstab94 4:0ed46a6cdf66 62 }
tsevcik08 5:cf58a6bfdd7a 63 }
tsevcik08 5:cf58a6bfdd7a 64
cstab94 4:0ed46a6cdf66 65 }//end main
cstab94 4:0ed46a6cdf66 66