servo unlock

Dependencies:   Servo mbed

Fork of Servo_HelloWorld by Simon Ford

main.cpp

Committer:
dll7
Date:
2017-03-14
Revision:
3:e80efe31284d
Parent:
2:dd5776c8594d
Child:
4:ea67df2060cd

File content as of revision 3:e80efe31284d:

// Hello World to sweep a servo through its full range

#include "mbed.h"
#include "Servo.h"

Servo servo(D6);
InterruptIn button(D8);
Serial pc(USBTX, USBRX); // tx, rx


void rise(){
  printf("rise");
  servo = 0.0;
}

void fall(){
  printf("fall");
  servo = 1.0;
}

int main() {
    printf("Servo Calibration Controls:\n");
    printf("1,2,3 - Position Servo (full left, middle, full right)\n");
    printf("4,5 - Decrease or Increase range\n");
 
    float range = 0.0005;
    float position = 0.5;
    
    while(1) {                   
        switch(pc.getc()) {
            case '1': position = 0.0; break;
            case '2': position = 0.5; break;
            case '3': position = 1.0; break;
            case '4': range += 0.0001; break; 
            case '5': range -= 0.0001; break; 
            case '6': position += 0.1; break;
            case '7': position -= 0.1; break;
        }
        printf("position = %.1f, range = +/-%0.4f\n", position, range);
        servo.calibrate(range, 45.0); 
        servo = position;
    }
}