NHK2017Ateamかにろぼ
Dependencies: 2017NHKpin_config mbed FEP HMC6352 MotorDriverController PID QEI omni
\ ̄\ / ̄/ /l \ \ / / lヽ | ヽ ヽ | | / / | \ ` ‐ヽ ヽ ● ● / / ‐ / \ __ l | ||___|| / l __ / \ \ / \/ /\| 人__人 |/\ //\| |/\\ //\| |/\\ / . \_____/ \ ┏┓ ┏━┓┏┓ ┏┓ ┏┓┏┓ ┏┓ ┏┓┗┛ ┏┓ ┗┓┃┗┛ ┏┛┗━┓ ┃┃┃┃ ┃┃┏━┛┗┓┏┓┏┛┗━┓┃┃┏┓┏┓┏━━━┓ ┗┓┏━┛ ┃┃┗┛ ┃┃┗━┓┏┛┗┛┗┓┏┓┃┗┛┗┛┃┃┗━━━┛ ┏┛┃┏━┓┃┗━━┓┃┃┏━┛┗┓ ┏┛┃┃┃ ┃┃ ┃┏┛┗━┛┗━━┓┃┃┃┃┏┓┏┛ ┗━┛┃┃ ┃┃┏┓ ┃┃┏━━┓┏━━┛┃┃┃┃┗┛┃ ┏┛┃ ┃┃┃┗━━┓ ┗┛┗━━┛┗━━━┛┗┛┗━━┛ ┗━┛ ┗┛┗━━━┛
bot/controller/controller.h
- Committer:
- UCHITAKE
- Date:
- 2017-09-04
- Revision:
- 19:3a62cbc6fee9
- Parent:
- 16:86958857c739
- Child:
- 21:b2c1d73b0ee9
File content as of revision 19:3a62cbc6fee9:
/** * @file controller.h * @brief FEPを使ったコントローラ受信部 */ #ifndef CONTROLLER_H #define CONTROLLER_H #include "mbed.h" #include "pin_config.h" #include <math.h> #include "FEP.h" #define M_PI 3.141592653589793 #define ADDR 203 #define FEP_SUCCESS 0 #define DATA_SIZE 6 #define STICK_DIVIDE 255.0 #define STICK_NEWTRAL 0.1 #define STICK_NORM_MAX 1.0 /** * @brief FEPを使ったコントローラのクラス */ class Controller : public FEP { public : /** * @brief コンストラクタ */ Controller(); /** * @brief コンストラクタ * @param FEPtx FEPtx * @param FEPrx FEPrx * @param addr address */ Controller(PinName FEPtx, PinName FEPrx,int addr); /** * @brief メンバ変数にボタンのステートを格納 */ bool receiveState(); /** * ボタン1の状態を取得 * @param number button number * @return status */ bool getButton1(int number); /** * ボタン2の状態を取得 * @param number button number * @return status */ bool getButton2(int number); /** * スティックの値を取得 * @param number sticknumber(x, y, x, y) * @return stick value */ float getStick(int number); /** * スチィックの角度を取得 * @param number left...0 right...1 * @return radian */ float getRadian(int number); /** * スティックの距離を取得 * @param number left..0 right..1 * @return norm */ float getNorm(int number); private : void setStick(); char data[6]; uint8_t fepTemp; protected : bool button1[7]; bool button2[6]; double stick[4]; double radian[2]; double norm[2]; }; #endif//CONTROLLER_H