Cornelius Bezuidenhout / ServoController
Committer:
Kerneels Bezuidenhout
Date:
Tue Sep 06 22:10:01 2016 +0200
Revision:
1:1b8a9e5b178d
Parent:
0:1703d29e0899
Child:
2:92d4dc70d591
Initial version. Initialise and set position of servo

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Kerneels Bezuidenhout 1:1b8a9e5b178d 1 #ifndef SERVOCONTROLLER_H
Kerneels Bezuidenhout 1:1b8a9e5b178d 2 #define SERVOCONTROLLER_H
Kerneels Bezuidenhout 1:1b8a9e5b178d 3
Kerneels Bezuidenhout 1:1b8a9e5b178d 4 //Includes
Kerneels Bezuidenhout 1:1b8a9e5b178d 5 #include "mbed.h"
Kerneels Bezuidenhout 1:1b8a9e5b178d 6
Kerneels Bezuidenhout 1:1b8a9e5b178d 7 /**
Kerneels Bezuidenhout 1:1b8a9e5b178d 8 * A Servo controller library
Kerneels Bezuidenhout 1:1b8a9e5b178d 9 *
Kerneels Bezuidenhout 1:1b8a9e5b178d 10 * @author CA Bezuidenhout
Kerneels Bezuidenhout 1:1b8a9e5b178d 11 * @section USAGE EXAMPLE
Kerneels Bezuidenhout 1:1b8a9e5b178d 12 */
Kerneels Bezuidenhout 1:1b8a9e5b178d 13 class ServoController
Kerneels Bezuidenhout 1:1b8a9e5b178d 14 {
Kerneels Bezuidenhout 1:1b8a9e5b178d 15 public:
Kerneels Bezuidenhout 1:1b8a9e5b178d 16 /**
Kerneels Bezuidenhout 1:1b8a9e5b178d 17 * @param pwmPin : PWM pin of servo
Kerneels Bezuidenhout 1:1b8a9e5b178d 18 * @param ref : Reference angle in degress (default 90)
Kerneels Bezuidenhout 1:1b8a9e5b178d 19 */
Kerneels Bezuidenhout 1:1b8a9e5b178d 20 ServoController(PinName pwmPin, float ref = 90.0f);
Kerneels Bezuidenhout 1:1b8a9e5b178d 21
Kerneels Bezuidenhout 1:1b8a9e5b178d 22 /**
Kerneels Bezuidenhout 1:1b8a9e5b178d 23 * @return The current angle of the servo
Kerneels Bezuidenhout 1:1b8a9e5b178d 24 */
Kerneels Bezuidenhout 1:1b8a9e5b178d 25 float GetAngle();
Kerneels Bezuidenhout 1:1b8a9e5b178d 26
Kerneels Bezuidenhout 1:1b8a9e5b178d 27 private:
Kerneels Bezuidenhout 1:1b8a9e5b178d 28 PWMOut _servo;
Kerneels Bezuidenhout 1:1b8a9e5b178d 29 float _angle;
Kerneels Bezuidenhout 1:1b8a9e5b178d 30 float _ref;
Kerneels Bezuidenhout 1:1b8a9e5b178d 31 static const float DEG2PW = (2.0f-1.0f)/180.0f;
Kerneels Bezuidenhout 1:1b8a9e5b178d 32
Kerneels Bezuidenhout 1:1b8a9e5b178d 33 void SetServo();
Kerneels Bezuidenhout 1:1b8a9e5b178d 34 void SetAbsolute(float angle);
Kerneels Bezuidenhout 1:1b8a9e5b178d 35 };
Kerneels Bezuidenhout 1:1b8a9e5b178d 36
Kerneels Bezuidenhout 1:1b8a9e5b178d 37 #endif