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

Dependencies:   Tach

Dependents:   EW202FP_Stop

ContinuousServo.cpp

Committer:
jdonnal
Date:
2018-03-02
Revision:
0:d6371727ce0c

File content as of revision 0:d6371727ce0c:

#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);
}