s3003
Diff: S3003.h
- Revision:
- 0:f282e4f3d57d
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/S3003.h Sat Sep 09 00:47:55 2017 +0000 @@ -0,0 +1,34 @@ +#ifndef __S3003_H_ +#define __S3003_H_ + +#include "mbed.h" + +#define SERVO_PWM_MSEC 0.030f // サーボの周期 + +#define ARM_MOUTH_PWM_WIDTH_MAX 3000 // PWM(最大値) +#define ARM_MOUTH_PWM_WIDTH_CENTER 1750 // PWM(中心) +#define ARM_MOUTH_PWM_WIDTH_MIN 500 // PWM(最小値) + +#define PWM_SIG_HI 1 // シグナルHi +#define PWM_SIG_LO 0 // シグナルLo + +#define SERVO_PWM_MAX_VALUE 3000 // PWM(最大値) +#define SERVO_PWM_MIN_VALUE 500 // PWM(最小値) + + +// サーボモータ(型式:S3003、FUTABA製)の制御クラス +class S3003 +{ + public: + S3003(PinName pin); + + private: + // Servo Out + DigitalOut _servo; + int servoPwmWidth; + Ticker tm; + void SetPWM(int pwm_us); + void PeriodicProcess(); +}; + +#endif \ No newline at end of file