mpu9250のライブラリ、I2Cを利用。開発段階のため微妙

Dependents:   library

Revision:
4:c4ab5c6e45c8
Parent:
3:1dcc2a9ff958
Child:
5:92d3913dcaee
diff -r 1dcc2a9ff958 -r c4ab5c6e45c8 mpu9250_i2c.h
--- a/mpu9250_i2c.h	Sat Jan 28 20:25:49 2017 +0000
+++ b/mpu9250_i2c.h	Sat Jan 28 20:32:54 2017 +0000
@@ -105,11 +105,11 @@
 
 public:
 
-    /**
-        @brief  mpu9250インスタンスを生成する
-        @param  _i2c  メインプログラムで宣言したI2Cインスタンスのアドレス
-        @param  celect  AD0ピンがHIGHならAD0_HIGH,LOWならAD0_LOW
-        @note  第二引数なしだとAD0_HIGHになります.
+   /**
+    *    @brief  mpu9250インスタンスを生成する
+    *    @param  _i2c  メインプログラムで宣言したI2Cインスタンスのアドレス
+    *    @param  celect  AD0ピンがHIGHならAD0_HIGH,LOWならAD0_LOW
+    *    @note  第二引数なしだとAD0_HIGHになります.
     */
     mpu9250(I2C &_i2c, AD0 celect = AD0_HIGH);
     
@@ -120,116 +120,118 @@
     char readReg(char addr, char reg);
     void readReg(char addr, char start_reg, char* buff, char num);
     
-    /**
-        @brief  慣性センサと通信ができているか確認する
-        @note  trueが返ってきたら成功,falseなら...
+   /**
+    *    @brief  慣性センサと通信ができているか確認する
+    *    @note  trueが返ってきたら成功,falseなら...
     */
     bool senserTest();
     
-    /**
-        @bref  地磁気センサと通信ができているか確認する
-        @note  trueが返ってきたら成功,falseなら...
+   /**
+    *    @bref  地磁気センサと通信ができているか確認する
+    *    @note  trueが返ってきたら成功,falseなら...
     */
     bool mag_senserTest();
     
-    /**
-        @bref  加速度センサのレンジを設定
-        @param  a_range _2G, _4G, _8G, _16Gの中から選択
-        @note  引数無しで±4Gになる
+   /**
+    *    @bref  加速度センサのレンジを設定
+    *    @param  a_range _2G, _4G, _8G, _16Gの中から選択
+    *    @note  引数無しで±4Gになる
     */
     void setAcc(ACC_RANGE a_range = _4G);
     
-    /**
-        @bref  角速度センサのレンジ設定
-        @param  g_range _250DPS, _500DPS, _1000DPS, _2000DPSの中から選択
-        @note  引数無しで±500DPS
+   /**
+    *    @bref  角速度センサのレンジ設定
+    *    @param  g_range _250DPS, _500DPS, _1000DPS, _2000DPSの中から選択
+    *    @note  引数無しで±500DPS
     */
     void setGyro(GYRO_RANGE g_range = _500DPS);
     
-    /**
-        @bref  地磁気センサのデータレート設定
-        @param  rate  _8HZ か _100HZを選択
-        @note  あえて8Hzにする必要は無いと思います.
+   /**
+    *    @bref  地磁気センサのデータレート設定
+    *    @param  rate  _8HZ か _100HZを選択
+    *    @note  あえて8Hzにする必要は無いと思います.
     */
     void setMag(MAG_RATE rate = _100HZ);
     
     void init();
     
-    /**
-        @bref   I2Cの通信速度を変更できます.余程のことがない限り使用しなくていいです・
+    
+   /**
+    *    @bref   I2Cの通信速度を変更できます.余程のことがない限り使用しなくていいです・
     */
     void frequency(int Hz);
     
-    /**
-        @bref  mpu9250のデジタルローパスフィルタの設定
-        @param  band  NO_USE, _460HZ, _184HZ, _92HZ, _41HZ, _20HZ, _10HZ, _5HZから選択
-        @note  カットオフ周波数なのかサンプルレートなのかよく分かりません.正直効果が見られません
+   /**
+    *    @bref  mpu9250のデジタルローパスフィルタの設定
+    *    @param  band  NO_USE, _460HZ, _184HZ, _92HZ, _41HZ, _20HZ, _10HZ, _5HZから選択
+    *    @note  カットオフ周波数なのかサンプルレートなのかよく分かりません.正直効果が見られません
     */
     void setAccLPF(A_BAND_WIDTH band);
     
-    /**
-        @bref  ゼロ点のずれを補正するオフセット値を設定する
-        @param  ax,ay,az    加速度のオフセット
-        @param  gx,gy,gz    角速度のオフセット
-        @param  mx,my,mz    地磁気のオフセット
-        @note  とても重要です.地磁気は定期的にキャリブレーションをしてください.ちなみに,これらの値は測定値より引かれています.
+   /**
+    *    @bref  ゼロ点のずれを補正するオフセット値を設定する
+    *    @param  ax,ay,az    加速度のオフセット
+    *    @param  gx,gy,gz    角速度のオフセット
+    *    @param  mx,my,mz    地磁気のオフセット
+    *    @note  とても重要です.地磁気は定期的にキャリブレーションをしてください.ちなみに,これらの値は測定値より引かれています.
     */
     void setOffset(double ax, double ay, double az,
                    double gx, double gy, double gz,
                    double mx, double my, double mz);
                    
-    /**
-        @bref  加速度を取得します.
-        @param  ax  x軸方向の加速度[G]
-        @param  ay  y軸方向の加速度[G]
-        @param  az  z軸方向の加速度[G]
-        @note  型はfloat でも doubleでも構いません.
+   /**
+    *    @bref  加速度を取得します.
+    *    @param  ax  x軸方向の加速度[G]
+    *    @param  ay  y軸方向の加速度[G]
+    *    @param  az  z軸方向の加速度[G]
+    *    @note  型はfloat でも doubleでも構いません.
     */
     template<typename T>void getAcc(T *ax, T *ay, T *az);
     
-    /**
-        @bref  加速度を取得します.
-        @param  acc  各軸方向の加速度[G],x,y,zの順
-        @note  型はfloat でも doubleでも構いません.
+   /**
+    *    @bref  加速度を取得します.
+    *    @param  acc  各軸方向の加速度[G],x,y,zの順
+    *    @note  型はfloat でも doubleでも構いません.
     */
     template<typename T>void getAcc(T *acc);
     
-    /**
-        @bref  角速度を取得します.
-        @param  gx  x軸方向の角速度[degree/s]
-        @param  gy  y軸方向の角速度[degree/s]
-        @param  gz  z軸方向の角速度[degree/s]
-        @note  型はfloat でも doubleでも構いません.
+   /**
+    *    @bref  角速度を取得します.
+    *    @param  gx  x軸方向の角速度[degree/s]
+    *    @param  gy  y軸方向の角速度[degree/s]
+    *    @param  gz  z軸方向の角速度[degree/s]
+    *    @note  型はfloat でも doubleでも構いません.
     */
     template<typename T>void getGyro(T *gx, T *gy, T *gz);
     
-    /**
-        @bref  角速度を取得します.
-        @param  gyro  各軸方向の角速度[degree/s], x,y,zの順
-        @note  型はfloat でも doubleでも構いません.
+   /**
+    *    @bref  角速度を取得します.
+    *    @param  gyro  各軸方向の角速度[degree/s], x,y,zの順
+    *    @note  型はfloat でも doubleでも構いません.
     */
     template<typename T>void getGyro(T *gyro);
     
-    /**
-        @bref  磁束密度を取得します.
-        @param  mx  x軸方向の磁束密度[uT]
-        @param  my  y軸方向の磁束密度[uT]
-        @param  mz  z軸方向の磁束密度[uT]
-        @note  型はfloat でも doubleでも構いません.
+   /**
+    *    @bref  磁束密度を取得します.
+    *    @param  mx  x軸方向の磁束密度[uT]
+    *    @param  my  y軸方向の磁束密度[uT]
+    *    @param  mz  z軸方向の磁束密度[uT]
+    *    @note  型はfloat でも doubleでも構いません.
     */
     template<typename T>void getMag(T *mx, T *my, T *mz);
     
-    /**
-        @bref  磁束密度を取得します.
-        @param  mag  各軸方向の磁束密度[uT],x,y,zの順
-        @note  型はfloat でも doubleでも構いません.
+    
+   /**
+    *    @bref  磁束密度を取得します.
+    *    @param  mag  各軸方向の磁束密度[uT],x,y,zの順
+    *    @note  型はfloat でも doubleでも構いません.
     */
     template<typename T>void getMag(T *mag);  
 
-    /**
-        @bref  角速度と加速度を同時に取得します.
-        @param  imu データを入れる配列,角速度[degree/s],加速度[G]の順
-        @note  配列数は6以上で
+   /**
+    *    @bref  角速度と加速度を同時に取得します.
+    *    @param  imu データを入れる配列,角速度[degree/s],加速度[G]の順
+    *    @note  配列数は6以上で
     */
     template<typename T>void getGyroAcc(T *imu);//gx,gy,gz,ax,ay,az