servo publish

Dependents:   TurtleBot_v01 TurtleBot_with_AHS

Fork of Servo by Jasper Denkers

Committer:
worasuchad
Date:
Mon Aug 13 11:38:39 2018 +0000
Revision:
2:895102af6679
Parent:
0:30b972d2dcec
Hormone v.1 for optimizing COT

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jdenkers 0:30b972d2dcec 1 #include "Servo.h"
jdenkers 0:30b972d2dcec 2 #include "mbed.h"
jdenkers 0:30b972d2dcec 3
jdenkers 0:30b972d2dcec 4 Servo::Servo(PinName Pin) : ServoPin(Pin) {}
jdenkers 0:30b972d2dcec 5
jdenkers 0:30b972d2dcec 6 void Servo::SetPosition(int Pos) {
jdenkers 0:30b972d2dcec 7 Position = Pos;
jdenkers 0:30b972d2dcec 8 }
jdenkers 0:30b972d2dcec 9
jdenkers 0:30b972d2dcec 10 void Servo::StartPulse() {
jdenkers 0:30b972d2dcec 11 ServoPin = 1;
jdenkers 0:30b972d2dcec 12 PulseStop.attach_us(this, &Servo::EndPulse, Position);
jdenkers 0:30b972d2dcec 13 }
jdenkers 0:30b972d2dcec 14
jdenkers 0:30b972d2dcec 15 void Servo::EndPulse() {
jdenkers 0:30b972d2dcec 16 ServoPin = 0;
jdenkers 0:30b972d2dcec 17 }
jdenkers 0:30b972d2dcec 18
jdenkers 0:30b972d2dcec 19 void Servo::Enable(int StartPos, int Period) {
jdenkers 0:30b972d2dcec 20 Position = StartPos;
jdenkers 0:30b972d2dcec 21 Pulse.attach_us(this, &Servo::StartPulse, Period);
jdenkers 0:30b972d2dcec 22 }
jdenkers 0:30b972d2dcec 23
jdenkers 0:30b972d2dcec 24 void Servo::Disable() {
jdenkers 0:30b972d2dcec 25 Pulse.detach();
jdenkers 0:30b972d2dcec 26 }