Interface with Parallax's high speed continuous rotation servo (Activity Bot)

Dependencies:   Tach

Dependents:   EW202FP_Stop

ContinuousServo.cpp

Committer:
m211002
Date:
2019-04-17
Revision:
1:f1fc02b6744f
Parent:
0:d6371727ce0c

File content as of revision 1:f1fc02b6744f:

#include "ContinuousServo.h"
 
 //64 counts per rev
 
ContinuousServo::ContinuousServo(PinName output): servo_(output){
    servo_.period_ms(50);
}

void ContinuousServo::speed(float val){
    //convert val from -1,1 to 1.3 to 1.7
    if(val<-1.0)
        val = -1.0;
    if(val>1.0)
        val = 1.0;
    servo_.pulsewidth_us((int)(1500+200*val));
}

void ContinuousServo::stop(){
    servo_.pulsewidth_us(0);
}