Saya Matsuura
/
drum
明石高専ロボ研 drum
Diff: gy521.hpp
- Revision:
- 0:ca84ed7518f5
- Child:
- 3:28c77df7c0b6
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gy521.hpp Thu Jan 02 09:30:06 2020 +0000 @@ -0,0 +1,40 @@ +#ifndef GY521_H +#define GY521_H +#include "mbed.h" + +/*GY521を使う。 + *I2Cオブジェクトを渡す + *GY521(I2C &i2c,int bit = 2,int calibration = 1000,double user_reg = 1.0); + *example + *L432KC : SDA = PB_7 , SCL = PB_6 + *F446RE : SDA = PB_3 , SCL = PB_10 + */ +//I2C i2c(SDA,SCL); +//GY521 gyro(i2c); + +class GY521{ +public: + GY521(I2C &i2c,int bit = 2,int calibration = 1000,double user_reg = 1.0); + double yaw; + //double temp; + void updata(); + void reset(int user); + void start(double start = 0){ + yaw = start; + } + double checkStatus(int mode); +private: + I2C &i2c_; + Timer timer_; + int16_t gyroRead2(enum GY521RegisterMap reg); + double gyro_z_aver_; + double gyro_z_now_; + double gyro_z_prev_; + double gyro_LSB_; + double diff_yaw_; + int bit_; + int calibration_; + bool flag_; +}; + +#endif /* GY521_H */ \ No newline at end of file