servo

Dependencies:   mbed

Committer:
djinn77
Date:
Fri Oct 26 12:33:02 2018 +0000
Revision:
2:67eb18b5ab01
Parent:
1:a44440103fa2
ben ;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
djinn77 0:b5413135f52d 1 #include "mbed.h"
djinn77 0:b5413135f52d 2
djinn77 0:b5413135f52d 3 PwmOut myservo1(A1);
djinn77 0:b5413135f52d 4 DigitalOut myled(LED1);
djinn77 0:b5413135f52d 5 Serial pc(USBTX,USBRX);
djinn77 0:b5413135f52d 6 AnalogIn analog_value(A0);
djinn77 0:b5413135f52d 7
djinn77 1:a44440103fa2 8 int vel=0.1;
djinn77 1:a44440103fa2 9
djinn77 0:b5413135f52d 10 int main() {
djinn77 0:b5413135f52d 11
djinn77 0:b5413135f52d 12 pc.baud(38400);
djinn77 0:b5413135f52d 13 float meas;
djinn77 0:b5413135f52d 14 myservo1.period_ms(20);
djinn77 2:67eb18b5ab01 15 // myservo1.pulsewidth_us(500);
djinn77 0:b5413135f52d 16 myled = 0;
djinn77 0:b5413135f52d 17
djinn77 0:b5413135f52d 18 while(1) {
djinn77 2:67eb18b5ab01 19 //meas = analog_value.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
djinn77 2:67eb18b5ab01 20 meas = analog_value.read() * 1800; // Change the value to be in the 0 to 3300 range
djinn77 0:b5413135f52d 21
djinn77 0:b5413135f52d 22 pc.printf("measure = %.0f mV\n", meas);
djinn77 0:b5413135f52d 23
djinn77 2:67eb18b5ab01 24 myservo1.pulsewidth_us(meas+500);
djinn77 2:67eb18b5ab01 25
djinn77 2:67eb18b5ab01 26 /*
djinn77 2:67eb18b5ab01 27 if(meas < 800)
djinn77 2:67eb18b5ab01 28 myservo1.pulsewidth_us(500);
djinn77 2:67eb18b5ab01 29 else if(meas < 1900)
djinn77 2:67eb18b5ab01 30 myservo1.pulsewidth_us(meas);
djinn77 2:67eb18b5ab01 31 else
djinn77 2:67eb18b5ab01 32 myservo1.pulsewidth_us(2350);
djinn77 2:67eb18b5ab01 33 */
djinn77 2:67eb18b5ab01 34
djinn77 2:67eb18b5ab01 35 /*
djinn77 0:b5413135f52d 36 if(meas >= 2000)
djinn77 0:b5413135f52d 37 myservo1.pulsewidth_us(500);
djinn77 1:a44440103fa2 38 wait(vel);
djinn77 2:67eb18b5ab01 39 if(meas < 2000 || meas > 1000)
djinn77 2:67eb18b5ab01 40 myservo1.pulsewidth_us(1500);
djinn77 2:67eb18b5ab01 41 wait(vel);
djinn77 0:b5413135f52d 42 if(meas <=1000){
djinn77 0:b5413135f52d 43 myservo1.pulsewidth_us(2500);
djinn77 1:a44440103fa2 44 wait(vel);
djinn77 2:67eb18b5ab01 45
djinn77 2:67eb18b5ab01 46
djinn77 0:b5413135f52d 47 }
djinn77 2:67eb18b5ab01 48 */
djinn77 0:b5413135f52d 49 }
djinn77 0:b5413135f52d 50 }