Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
ServoController.hpp@1:1b8a9e5b178d, 2016-09-06 (annotated)
- 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?
| User | Revision | Line number | New 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 |