From: Kiveisha Yevgeniy Date: Mon, 9 Jun 2014 16:00:07 +0000 (+0000) Subject: doxygen: Added documentation for servo base and es08a X-Git-Tag: v0.1.2~6 X-Git-Url: http://review.tizen.org/git/?p=contrib%2Fupm.git;a=commitdiff_plain;h=814cc4a0e8e0cfe02eb943a55f94d50a3b758c61 doxygen: Added documentation for servo base and es08a Signed-off-by: Kiveisha Yevgeniy --- diff --git a/examples/es08a.cxx b/examples/es08a.cxx index c82bb25..81cdb9b 100644 --- a/examples/es08a.cxx +++ b/examples/es08a.cxx @@ -43,6 +43,7 @@ sig_handler(int signo) int main(int argc, char **argv) { + //! [Interesting] upm::ES08A *servo = new upm::ES08A(5); signal(SIGINT, sig_handler); @@ -59,6 +60,7 @@ main(int argc, char **argv) clock -= 10; } } + //! [Interesting] std::cout << "exiting application" << std::endl; diff --git a/src/servo/es08a.h b/src/servo/es08a.h index c17dbc6..4ac3bd6 100644 --- a/src/servo/es08a.h +++ b/src/servo/es08a.h @@ -31,9 +31,26 @@ namespace upm { #define MIN_PULSE_WIDTH 600 #define MAX_PULSE_WIDTH 2500 +/** + * @brief C++ API for ES08A servo component + * + * This file defines the ES08A C++ interface for libes08a + * + * @snippet es08a.cxx Interesting + * + */ class ES08A : public Servo { public: + /** + * Instanciates a ES08A object + * + * @param pin servo pin number + */ ES08A (int pin); + + /** + * ES08A object destructor. + */ ~ES08A (); }; diff --git a/src/servo/servo.h b/src/servo/servo.h index 430a496..5b500be 100644 --- a/src/servo/servo.h +++ b/src/servo/servo.h @@ -35,12 +35,46 @@ namespace upm { #define HIGH 1 #define LOW 0 +/** + * @brief Base class for other servo components + * + * PMOD pins for MAX44000PMB1 board + * + */ class Servo { public: + /** + * Instanciates a servo object + * + * @param pin servo pin number + */ Servo (int pin); + + /** + * Servo object destructor. + */ ~Servo(); + + /** + * Set the of the servo engine. + * + * X = between (MIN_PULSE_WIDTH , MAX_PULSE_WIDTH) + * + * X usec + * _______ + * |_______________________________________ + * 20000 usec + * + * Max period can be only 7968750(nses) which is ~8(msec) + * so the servo will not work as expected. + * + * @param angle number between 0 and 180 + */ maa_result_t setAngle (int angle); + /** + * Return name of the component + */ std::string name() { return m_name;