.

Dependencies:   Servo mbed

Committer:
ericoneill
Date:
Wed Feb 25 19:12:52 2015 +0000
Revision:
0:d328ecb3fbb1
Child:
1:8e5821dec0f7
set up repository with old motor + servo code

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ericoneill 0:d328ecb3fbb1 1 #include "mbed.h"
ericoneill 0:d328ecb3fbb1 2
ericoneill 0:d328ecb3fbb1 3 DigitalOut myled(LED1);
ericoneill 0:d328ecb3fbb1 4 PwmOut servo(PTA5);
ericoneill 0:d328ecb3fbb1 5 PwmOut motor(PTA4);
ericoneill 0:d328ecb3fbb1 6 Serial pc(USBTX, USBRX); // tx, rx
ericoneill 0:d328ecb3fbb1 7
ericoneill 0:d328ecb3fbb1 8 void motor_sweep() {
ericoneill 0:d328ecb3fbb1 9 for(float p = 0.0; p<.0025; p+=.0001){
ericoneill 0:d328ecb3fbb1 10 motor.pulsewidth(p);
ericoneill 0:d328ecb3fbb1 11 if(p == 0.0 || p == 1.0 || p == .0007){
ericoneill 0:d328ecb3fbb1 12 wait(2);
ericoneill 0:d328ecb3fbb1 13 }
ericoneill 0:d328ecb3fbb1 14 wait(.1);
ericoneill 0:d328ecb3fbb1 15 }
ericoneill 0:d328ecb3fbb1 16 }
ericoneill 0:d328ecb3fbb1 17
ericoneill 0:d328ecb3fbb1 18 void servo_sweep(){
ericoneill 0:d328ecb3fbb1 19 for(float p = 0.001; p<0.002; p+=0.0001){
ericoneill 0:d328ecb3fbb1 20 servo.pulsewidth(p);
ericoneill 0:d328ecb3fbb1 21 wait(0.5);
ericoneill 0:d328ecb3fbb1 22 }
ericoneill 0:d328ecb3fbb1 23 }
ericoneill 0:d328ecb3fbb1 24
ericoneill 0:d328ecb3fbb1 25 int main() {
ericoneill 0:d328ecb3fbb1 26 servo.period(0.005);
ericoneill 0:d328ecb3fbb1 27 motor.period(.0025);
ericoneill 0:d328ecb3fbb1 28 while(1){
ericoneill 0:d328ecb3fbb1 29 char choice = pc.getc();
ericoneill 0:d328ecb3fbb1 30 //pc.putc(choice);
ericoneill 0:d328ecb3fbb1 31 switch(choice){
ericoneill 0:d328ecb3fbb1 32 case '0':
ericoneill 0:d328ecb3fbb1 33 motor.pulsewidth(0.0);
ericoneill 0:d328ecb3fbb1 34 pc.printf("0% \n");
ericoneill 0:d328ecb3fbb1 35 break;
ericoneill 0:d328ecb3fbb1 36 case '1':
ericoneill 0:d328ecb3fbb1 37 motor.pulsewidth(.0025);
ericoneill 0:d328ecb3fbb1 38 pc.printf("100% \n");
ericoneill 0:d328ecb3fbb1 39 break;
ericoneill 0:d328ecb3fbb1 40 case '3':
ericoneill 0:d328ecb3fbb1 41 motor.pulsewidth(.0025*.3);
ericoneill 0:d328ecb3fbb1 42 pc.printf("30% \n");
ericoneill 0:d328ecb3fbb1 43 break;
ericoneill 0:d328ecb3fbb1 44 case '5':
ericoneill 0:d328ecb3fbb1 45 motor.pulsewidth(.0025*.5);
ericoneill 0:d328ecb3fbb1 46 pc.printf("50% \n");
ericoneill 0:d328ecb3fbb1 47 break;
ericoneill 0:d328ecb3fbb1 48 default:
ericoneill 0:d328ecb3fbb1 49 motor.pulsewidth(.0025*.3);
ericoneill 0:d328ecb3fbb1 50 pc.printf("default");
ericoneill 0:d328ecb3fbb1 51 break;
ericoneill 0:d328ecb3fbb1 52 }
ericoneill 0:d328ecb3fbb1 53 //servo_sweep();
ericoneill 0:d328ecb3fbb1 54 //motor_sweep();
ericoneill 0:d328ecb3fbb1 55 //motor.pulsewidth(.0025);
ericoneill 0:d328ecb3fbb1 56 }
ericoneill 0:d328ecb3fbb1 57 }