pierre masala
/
MeARM
Mearm colorsorting with web application
Servo.cpp@5:36f1e4e1a427, 2017-12-14 (annotated)
- Committer:
- pierre11
- Date:
- Thu Dec 14 12:48:11 2017 +0000
- Revision:
- 5:36f1e4e1a427
oui
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
pierre11 | 5:36f1e4e1a427 | 1 | #include "Servo.h" |
pierre11 | 5:36f1e4e1a427 | 2 | #include "mbed.h" |
pierre11 | 5:36f1e4e1a427 | 3 | |
pierre11 | 5:36f1e4e1a427 | 4 | Servo::Servo(PinName Pin) : ServoPin(Pin) {} |
pierre11 | 5:36f1e4e1a427 | 5 | |
pierre11 | 5:36f1e4e1a427 | 6 | void Servo::SetPosition(int Pos) { |
pierre11 | 5:36f1e4e1a427 | 7 | Position = Pos; |
pierre11 | 5:36f1e4e1a427 | 8 | } |
pierre11 | 5:36f1e4e1a427 | 9 | |
pierre11 | 5:36f1e4e1a427 | 10 | void Servo::StartPulse() { |
pierre11 | 5:36f1e4e1a427 | 11 | ServoPin = 1; |
pierre11 | 5:36f1e4e1a427 | 12 | PulseStop.attach_us(this, &Servo::EndPulse, Position); |
pierre11 | 5:36f1e4e1a427 | 13 | } |
pierre11 | 5:36f1e4e1a427 | 14 | |
pierre11 | 5:36f1e4e1a427 | 15 | void Servo::EndPulse() { |
pierre11 | 5:36f1e4e1a427 | 16 | ServoPin = 0; |
pierre11 | 5:36f1e4e1a427 | 17 | } |
pierre11 | 5:36f1e4e1a427 | 18 | |
pierre11 | 5:36f1e4e1a427 | 19 | void Servo::Enable(int StartPos, int Period) { |
pierre11 | 5:36f1e4e1a427 | 20 | Position = StartPos; |
pierre11 | 5:36f1e4e1a427 | 21 | Pulse.attach_us(this, &Servo::StartPulse, Period); |
pierre11 | 5:36f1e4e1a427 | 22 | } |
pierre11 | 5:36f1e4e1a427 | 23 | |
pierre11 | 5:36f1e4e1a427 | 24 | void Servo::Disable() { |
pierre11 | 5:36f1e4e1a427 | 25 | Pulse.detach(); |
pierre11 | 5:36f1e4e1a427 | 26 | } |