Yosuke Kirihata / Mbed 2 deprecated Nucleo_CaitSith_Firmware_added_delayServo

Dependencies:   mbed

Fork of Nucleo_CaitSith_Firmware by Yosuke Kirihata

ExtendedServo.h

Committer:
YosukeK
Date:
2014-09-20
Revision:
1:5f6dd444850a
Child:
3:9ac9fdf1856e

File content as of revision 1:5f6dd444850a:

#ifndef __EXTENDEDSERVO_H__
#define __EXTENDEDSERVO_H__
 
#include "PwmServo.h"

/* 拡張サーボクラス */
class ExtendedServo
{
  public:
    //constructor
    ExtendedServo(PinName pin);
    ExtendedServo(PinName pin, int upperLimit , int lowerLimit);
    ExtendedServo(PinName pin, int upperLimitAngle ,int lowerLimitAngle,
                  int offsetAngle, bool isReverse);
    //destructor
    ~ExtendedServo();
    //setter,getter
    void setOffsetAngle(int angle);
    int getOffsetAngle();
    void setDirection(bool isReverse);
    int getDirection();
    void setUpperLimit(int angle);
    int getUpperLimit();
    void setLowerLimit(int angle);
    int getLowerLimit();
    //method
    int convertAngle(int angle);
    int reverseAngle(int angle, bool isReverse);
    int roundAngle(int angle, int upperLimit, int lowerLimit);
    void setAngle(int angle);
    void backToStartPoint();
 
  private:
    PwmServo* mPwmServo; //サーボのインスタンス
    int mOffsetAngle; //
    bool mIsReverse; //
    int mUpperLimit;//
    int mLowerLimit;//
};
 
#endif /* __EXTENDEDSERVO_H__ */