PM2_Lib

Dependencies:   LSM9DS1 RangeFinder FastPWM

Servo.cpp

Committer:
pmic
Date:
2021-04-06
Revision:
4:9c003c402033
Parent:
0:86129f1b4a93
Child:
10:fe74e8909d3f

File content as of revision 4:9c003c402033:

#include "Servo.h"

Servo::Servo(PinName Pin) : ServoPin(Pin) {}

void Servo::SetPosition(int Pos)
{
    Position = Pos;
}

void Servo::StartPulse()
{
    ServoPin = 1;
    PulseStop.attach_us(callback(this, &Servo::EndPulse), Position);
}

void Servo::EndPulse()
{
    ServoPin = 0;
}

void Servo::Enable(int StartPos, int Period)
{
    Position = StartPos;
    Pulse.attach_us(callback(this, &Servo::StartPulse), Period);
}

void Servo::Disable()
{
    Pulse.detach();
}