Workshop 2

Dependencies:   FastPWM

Revision:
0:86129f1b4a93
Child:
4:9c003c402033
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Servo.cpp	Tue Mar 30 12:21:00 2021 +0000
@@ -0,0 +1,26 @@
+#include "Servo.h"
+#include "mbed.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();
+    }
\ No newline at end of file