2Chx3dof Magnetrometer supported M-Series Random Sequence Generator Servo Control

Dependencies:   mbed

Sampling Frequency

Sampling Frequency in main.cpp

#define SampleFreq     200   // [Hz]

Auto Stop Setting

Auto-stop Timer 15sec after

    // auto-stop when 15sec after
    if(smpl_cnt>3000){stop_dump();}

The number of 3000 means Sample Count. The number is given by SampleFreq[Hz] * Auto-Stop Time [sec].

M-Series Random Sequence

M-series Random Update Term in main.cpp

// M-series update flag
#define  M_TERM  200;

Unit is sample count.

cf.) 200 equals to 200 [samples] which equals to 1 [second] where SampleFreq = 200 [Hz}.

See above.

M-Series Random Servo Control

Committer:
mfurukawa
Date:
Mon Feb 01 17:11:03 2021 +0000
Revision:
0:4656a133ed1a
initial commit;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mfurukawa 0:4656a133ed1a 1 /*CODED by Qiyong Mu on 21/06/2014
mfurukawa 0:4656a133ed1a 2 kylongmu@msn.com
mfurukawa 0:4656a133ed1a 3
mfurukawa 0:4656a133ed1a 4 revised by Masahiro Furukawa
mfurukawa 0:4656a133ed1a 5 m.furukawa@ist.osaka-u.ac.jp 10/05/2018
mfurukawa 0:4656a133ed1a 6 */
mfurukawa 0:4656a133ed1a 7
mfurukawa 0:4656a133ed1a 8
mfurukawa 0:4656a133ed1a 9 #ifndef mpu9250_h
mfurukawa 0:4656a133ed1a 10 #define mpu9250_h
mfurukawa 0:4656a133ed1a 11 #include "mbed.h"
mfurukawa 0:4656a133ed1a 12
mfurukawa 0:4656a133ed1a 13
mfurukawa 0:4656a133ed1a 14 class mpu9250_spi
mfurukawa 0:4656a133ed1a 15 {
mfurukawa 0:4656a133ed1a 16 SPI& spi;
mfurukawa 0:4656a133ed1a 17 DigitalOut cs;
mfurukawa 0:4656a133ed1a 18
mfurukawa 0:4656a133ed1a 19 public:
mfurukawa 0:4656a133ed1a 20 mpu9250_spi(SPI& _spi, PinName _cs);
mfurukawa 0:4656a133ed1a 21 unsigned int WriteReg( uint8_t WriteAddr, uint8_t WriteData );
mfurukawa 0:4656a133ed1a 22 unsigned int ReadReg( uint8_t WriteAddr, uint8_t WriteData );
mfurukawa 0:4656a133ed1a 23 void ReadRegs( uint8_t ReadAddr, uint8_t *ReadBuf, unsigned int Bytes );
mfurukawa 0:4656a133ed1a 24
mfurukawa 0:4656a133ed1a 25 bool init(int sample_rate_div,int low_pass_filter);
mfurukawa 0:4656a133ed1a 26 void read_temp();
mfurukawa 0:4656a133ed1a 27 void read_acc();
mfurukawa 0:4656a133ed1a 28 void read_rot();
mfurukawa 0:4656a133ed1a 29 unsigned int set_gyro_scale(int scale);
mfurukawa 0:4656a133ed1a 30 unsigned int set_acc_scale(int scale);
mfurukawa 0:4656a133ed1a 31 void calib_acc();
mfurukawa 0:4656a133ed1a 32 void AK8963_calib_Magnetometer();
mfurukawa 0:4656a133ed1a 33 void select();
mfurukawa 0:4656a133ed1a 34 void deselect();
mfurukawa 0:4656a133ed1a 35 unsigned int whoami();
mfurukawa 0:4656a133ed1a 36 uint8_t AK8963_whoami();
mfurukawa 0:4656a133ed1a 37 void AK8963_read_Magnetometer();
mfurukawa 0:4656a133ed1a 38 void read_all();
mfurukawa 0:4656a133ed1a 39
mfurukawa 0:4656a133ed1a 40
mfurukawa 0:4656a133ed1a 41
mfurukawa 0:4656a133ed1a 42 float acc_divider;
mfurukawa 0:4656a133ed1a 43 float gyro_divider;
mfurukawa 0:4656a133ed1a 44
mfurukawa 0:4656a133ed1a 45 int calib_data[3];
mfurukawa 0:4656a133ed1a 46 float Magnetometer_ASA[3];
mfurukawa 0:4656a133ed1a 47
mfurukawa 0:4656a133ed1a 48 uint8_t accelerometer_response[6]; //追加
mfurukawa 0:4656a133ed1a 49 uint8_t gyroscope_response[6]; //追加
mfurukawa 0:4656a133ed1a 50
mfurukawa 0:4656a133ed1a 51 union {
mfurukawa 0:4656a133ed1a 52 float accelerometer_data[3];
mfurukawa 0:4656a133ed1a 53 unsigned long accelerometer_long[3]; // 4 bytes x 3ch
mfurukawa 0:4656a133ed1a 54 };
mfurukawa 0:4656a133ed1a 55 float Temperature;
mfurukawa 0:4656a133ed1a 56 union {
mfurukawa 0:4656a133ed1a 57 float gyroscope_data[3];
mfurukawa 0:4656a133ed1a 58 unsigned long gyroscope_long[3]; // 4 bytes x 3ch
mfurukawa 0:4656a133ed1a 59 };
mfurukawa 0:4656a133ed1a 60 union {
mfurukawa 0:4656a133ed1a 61 float Magnetometer[3];
mfurukawa 0:4656a133ed1a 62 unsigned long Magnetometer_long[3]; // 4 bytes x 3ch
mfurukawa 0:4656a133ed1a 63 };
mfurukawa 0:4656a133ed1a 64
mfurukawa 0:4656a133ed1a 65 private:
mfurukawa 0:4656a133ed1a 66 PinName _CS_pin;
mfurukawa 0:4656a133ed1a 67 PinName _SO_pin;
mfurukawa 0:4656a133ed1a 68 PinName _SCK_pin;
mfurukawa 0:4656a133ed1a 69 float _error;
mfurukawa 0:4656a133ed1a 70 };
mfurukawa 0:4656a133ed1a 71
mfurukawa 0:4656a133ed1a 72 #endif
mfurukawa 0:4656a133ed1a 73
mfurukawa 0:4656a133ed1a 74
mfurukawa 0:4656a133ed1a 75
mfurukawa 0:4656a133ed1a 76 // mpu9250 registers
mfurukawa 0:4656a133ed1a 77 #define MPUREG_XG_OFFS_TC 0x00
mfurukawa 0:4656a133ed1a 78 #define MPUREG_YG_OFFS_TC 0x01
mfurukawa 0:4656a133ed1a 79 #define MPUREG_ZG_OFFS_TC 0x02
mfurukawa 0:4656a133ed1a 80 #define MPUREG_X_FINE_GAIN 0x03
mfurukawa 0:4656a133ed1a 81 #define MPUREG_Y_FINE_GAIN 0x04
mfurukawa 0:4656a133ed1a 82 #define MPUREG_Z_FINE_GAIN 0x05
mfurukawa 0:4656a133ed1a 83 #define MPUREG_XA_OFFS_H 0x06
mfurukawa 0:4656a133ed1a 84 #define MPUREG_XA_OFFS_L 0x07
mfurukawa 0:4656a133ed1a 85 #define MPUREG_YA_OFFS_H 0x08
mfurukawa 0:4656a133ed1a 86 #define MPUREG_YA_OFFS_L 0x09
mfurukawa 0:4656a133ed1a 87 #define MPUREG_ZA_OFFS_H 0x0A
mfurukawa 0:4656a133ed1a 88 #define MPUREG_ZA_OFFS_L 0x0B
mfurukawa 0:4656a133ed1a 89 #define MPUREG_PRODUCT_ID 0x0C
mfurukawa 0:4656a133ed1a 90 #define MPUREG_SELF_TEST_X 0x0D
mfurukawa 0:4656a133ed1a 91 #define MPUREG_SELF_TEST_Y 0x0E
mfurukawa 0:4656a133ed1a 92 #define MPUREG_SELF_TEST_Z 0x0F
mfurukawa 0:4656a133ed1a 93 #define MPUREG_SELF_TEST_A 0x10
mfurukawa 0:4656a133ed1a 94 #define MPUREG_XG_OFFS_USRH 0x13
mfurukawa 0:4656a133ed1a 95 #define MPUREG_XG_OFFS_USRL 0x14
mfurukawa 0:4656a133ed1a 96 #define MPUREG_YG_OFFS_USRH 0x15
mfurukawa 0:4656a133ed1a 97 #define MPUREG_YG_OFFS_USRL 0x16
mfurukawa 0:4656a133ed1a 98 #define MPUREG_ZG_OFFS_USRH 0x17
mfurukawa 0:4656a133ed1a 99 #define MPUREG_ZG_OFFS_USRL 0x18
mfurukawa 0:4656a133ed1a 100 #define MPUREG_SMPLRT_DIV 0x19
mfurukawa 0:4656a133ed1a 101 #define MPUREG_CONFIG 0x1A
mfurukawa 0:4656a133ed1a 102 #define MPUREG_GYRO_CONFIG 0x1B
mfurukawa 0:4656a133ed1a 103 #define MPUREG_ACCEL_CONFIG 0x1C
mfurukawa 0:4656a133ed1a 104 #define MPUREG_ACCEL_CONFIG_2 0x1D
mfurukawa 0:4656a133ed1a 105 #define MPUREG_LP_ACCEL_ODR 0x1E
mfurukawa 0:4656a133ed1a 106 #define MPUREG_MOT_THR 0x1F
mfurukawa 0:4656a133ed1a 107 #define MPUREG_FIFO_EN 0x23
mfurukawa 0:4656a133ed1a 108 #define MPUREG_I2C_MST_CTRL 0x24
mfurukawa 0:4656a133ed1a 109 #define MPUREG_I2C_SLV0_ADDR 0x25
mfurukawa 0:4656a133ed1a 110 #define MPUREG_I2C_SLV0_REG 0x26
mfurukawa 0:4656a133ed1a 111 #define MPUREG_I2C_SLV0_CTRL 0x27
mfurukawa 0:4656a133ed1a 112 #define MPUREG_I2C_SLV1_ADDR 0x28
mfurukawa 0:4656a133ed1a 113 #define MPUREG_I2C_SLV1_REG 0x29
mfurukawa 0:4656a133ed1a 114 #define MPUREG_I2C_SLV1_CTRL 0x2A
mfurukawa 0:4656a133ed1a 115 #define MPUREG_I2C_SLV2_ADDR 0x2B
mfurukawa 0:4656a133ed1a 116 #define MPUREG_I2C_SLV2_REG 0x2C
mfurukawa 0:4656a133ed1a 117 #define MPUREG_I2C_SLV2_CTRL 0x2D
mfurukawa 0:4656a133ed1a 118 #define MPUREG_I2C_SLV3_ADDR 0x2E
mfurukawa 0:4656a133ed1a 119 #define MPUREG_I2C_SLV3_REG 0x2F
mfurukawa 0:4656a133ed1a 120 #define MPUREG_I2C_SLV3_CTRL 0x30
mfurukawa 0:4656a133ed1a 121 #define MPUREG_I2C_SLV4_ADDR 0x31
mfurukawa 0:4656a133ed1a 122 #define MPUREG_I2C_SLV4_REG 0x32
mfurukawa 0:4656a133ed1a 123 #define MPUREG_I2C_SLV4_DO 0x33
mfurukawa 0:4656a133ed1a 124 #define MPUREG_I2C_SLV4_CTRL 0x34
mfurukawa 0:4656a133ed1a 125 #define MPUREG_I2C_SLV4_DI 0x35
mfurukawa 0:4656a133ed1a 126 #define MPUREG_I2C_MST_STATUS 0x36
mfurukawa 0:4656a133ed1a 127 #define MPUREG_INT_PIN_CFG 0x37
mfurukawa 0:4656a133ed1a 128 #define MPUREG_INT_ENABLE 0x38
mfurukawa 0:4656a133ed1a 129 #define MPUREG_ACCEL_XOUT_H 0x3B
mfurukawa 0:4656a133ed1a 130 #define MPUREG_ACCEL_XOUT_L 0x3C
mfurukawa 0:4656a133ed1a 131 #define MPUREG_ACCEL_YOUT_H 0x3D
mfurukawa 0:4656a133ed1a 132 #define MPUREG_ACCEL_YOUT_L 0x3E
mfurukawa 0:4656a133ed1a 133 #define MPUREG_ACCEL_ZOUT_H 0x3F
mfurukawa 0:4656a133ed1a 134 #define MPUREG_ACCEL_ZOUT_L 0x40
mfurukawa 0:4656a133ed1a 135 #define MPUREG_TEMP_OUT_H 0x41
mfurukawa 0:4656a133ed1a 136 #define MPUREG_TEMP_OUT_L 0x42
mfurukawa 0:4656a133ed1a 137 #define MPUREG_GYRO_XOUT_H 0x43
mfurukawa 0:4656a133ed1a 138 #define MPUREG_GYRO_XOUT_L 0x44
mfurukawa 0:4656a133ed1a 139 #define MPUREG_GYRO_YOUT_H 0x45
mfurukawa 0:4656a133ed1a 140 #define MPUREG_GYRO_YOUT_L 0x46
mfurukawa 0:4656a133ed1a 141 #define MPUREG_GYRO_ZOUT_H 0x47
mfurukawa 0:4656a133ed1a 142 #define MPUREG_GYRO_ZOUT_L 0x48
mfurukawa 0:4656a133ed1a 143 #define MPUREG_EXT_SENS_DATA_00 0x49
mfurukawa 0:4656a133ed1a 144 #define MPUREG_EXT_SENS_DATA_01 0x4A
mfurukawa 0:4656a133ed1a 145 #define MPUREG_EXT_SENS_DATA_02 0x4B
mfurukawa 0:4656a133ed1a 146 #define MPUREG_EXT_SENS_DATA_03 0x4C
mfurukawa 0:4656a133ed1a 147 #define MPUREG_EXT_SENS_DATA_04 0x4D
mfurukawa 0:4656a133ed1a 148 #define MPUREG_EXT_SENS_DATA_05 0x4E
mfurukawa 0:4656a133ed1a 149 #define MPUREG_EXT_SENS_DATA_06 0x4F
mfurukawa 0:4656a133ed1a 150 #define MPUREG_EXT_SENS_DATA_07 0x50
mfurukawa 0:4656a133ed1a 151 #define MPUREG_EXT_SENS_DATA_08 0x51
mfurukawa 0:4656a133ed1a 152 #define MPUREG_EXT_SENS_DATA_09 0x52
mfurukawa 0:4656a133ed1a 153 #define MPUREG_EXT_SENS_DATA_10 0x53
mfurukawa 0:4656a133ed1a 154 #define MPUREG_EXT_SENS_DATA_11 0x54
mfurukawa 0:4656a133ed1a 155 #define MPUREG_EXT_SENS_DATA_12 0x55
mfurukawa 0:4656a133ed1a 156 #define MPUREG_EXT_SENS_DATA_13 0x56
mfurukawa 0:4656a133ed1a 157 #define MPUREG_EXT_SENS_DATA_14 0x57
mfurukawa 0:4656a133ed1a 158 #define MPUREG_EXT_SENS_DATA_15 0x58
mfurukawa 0:4656a133ed1a 159 #define MPUREG_EXT_SENS_DATA_16 0x59
mfurukawa 0:4656a133ed1a 160 #define MPUREG_EXT_SENS_DATA_17 0x5A
mfurukawa 0:4656a133ed1a 161 #define MPUREG_EXT_SENS_DATA_18 0x5B
mfurukawa 0:4656a133ed1a 162 #define MPUREG_EXT_SENS_DATA_19 0x5C
mfurukawa 0:4656a133ed1a 163 #define MPUREG_EXT_SENS_DATA_20 0x5D
mfurukawa 0:4656a133ed1a 164 #define MPUREG_EXT_SENS_DATA_21 0x5E
mfurukawa 0:4656a133ed1a 165 #define MPUREG_EXT_SENS_DATA_22 0x5F
mfurukawa 0:4656a133ed1a 166 #define MPUREG_EXT_SENS_DATA_23 0x60
mfurukawa 0:4656a133ed1a 167 #define MPUREG_I2C_SLV0_DO 0x63
mfurukawa 0:4656a133ed1a 168 #define MPUREG_I2C_SLV1_DO 0x64
mfurukawa 0:4656a133ed1a 169 #define MPUREG_I2C_SLV2_DO 0x65
mfurukawa 0:4656a133ed1a 170 #define MPUREG_I2C_SLV3_DO 0x66
mfurukawa 0:4656a133ed1a 171 #define MPUREG_I2C_MST_DELAY_CTRL 0x67
mfurukawa 0:4656a133ed1a 172 #define MPUREG_SIGNAL_PATH_RESET 0x68
mfurukawa 0:4656a133ed1a 173 #define MPUREG_MOT_DETECT_CTRL 0x69
mfurukawa 0:4656a133ed1a 174 #define MPUREG_USER_CTRL 0x6A
mfurukawa 0:4656a133ed1a 175 #define MPUREG_PWR_MGMT_1 0x6B
mfurukawa 0:4656a133ed1a 176 #define MPUREG_PWR_MGMT_2 0x6C
mfurukawa 0:4656a133ed1a 177 #define MPUREG_BANK_SEL 0x6D
mfurukawa 0:4656a133ed1a 178 #define MPUREG_MEM_START_ADDR 0x6E
mfurukawa 0:4656a133ed1a 179 #define MPUREG_MEM_R_W 0x6F
mfurukawa 0:4656a133ed1a 180 #define MPUREG_DMP_CFG_1 0x70
mfurukawa 0:4656a133ed1a 181 #define MPUREG_DMP_CFG_2 0x71
mfurukawa 0:4656a133ed1a 182 #define MPUREG_FIFO_COUNTH 0x72
mfurukawa 0:4656a133ed1a 183 #define MPUREG_FIFO_COUNTL 0x73
mfurukawa 0:4656a133ed1a 184 #define MPUREG_FIFO_R_W 0x74
mfurukawa 0:4656a133ed1a 185 #define MPUREG_WHOAMI 0x75
mfurukawa 0:4656a133ed1a 186 #define MPUREG_XA_OFFSET_H 0x77
mfurukawa 0:4656a133ed1a 187 #define MPUREG_XA_OFFSET_L 0x78
mfurukawa 0:4656a133ed1a 188 #define MPUREG_YA_OFFSET_H 0x7A
mfurukawa 0:4656a133ed1a 189 #define MPUREG_YA_OFFSET_L 0x7B
mfurukawa 0:4656a133ed1a 190 #define MPUREG_ZA_OFFSET_H 0x7D
mfurukawa 0:4656a133ed1a 191 #define MPUREG_ZA_OFFSET_L 0x7E
mfurukawa 0:4656a133ed1a 192 /* ---- AK8963 Reg In MPU9250 ----------------------------------------------- */
mfurukawa 0:4656a133ed1a 193
mfurukawa 0:4656a133ed1a 194 #define AK8963_I2C_ADDR 0x0c//0x18
mfurukawa 0:4656a133ed1a 195 #define AK8963_Device_ID 0x48
mfurukawa 0:4656a133ed1a 196
mfurukawa 0:4656a133ed1a 197 // Read-only Reg
mfurukawa 0:4656a133ed1a 198 #define AK8963_WIA 0x00
mfurukawa 0:4656a133ed1a 199 #define AK8963_INFO 0x01
mfurukawa 0:4656a133ed1a 200 #define AK8963_ST1 0x02
mfurukawa 0:4656a133ed1a 201 #define AK8963_HXL 0x03
mfurukawa 0:4656a133ed1a 202 #define AK8963_HXH 0x04
mfurukawa 0:4656a133ed1a 203 #define AK8963_HYL 0x05
mfurukawa 0:4656a133ed1a 204 #define AK8963_HYH 0x06
mfurukawa 0:4656a133ed1a 205 #define AK8963_HZL 0x07
mfurukawa 0:4656a133ed1a 206 #define AK8963_HZH 0x08
mfurukawa 0:4656a133ed1a 207 #define AK8963_ST2 0x09
mfurukawa 0:4656a133ed1a 208 // Write/Read Reg
mfurukawa 0:4656a133ed1a 209 #define AK8963_CNTL1 0x0A
mfurukawa 0:4656a133ed1a 210 #define AK8963_CNTL2 0x0B
mfurukawa 0:4656a133ed1a 211 #define AK8963_ASTC 0x0C
mfurukawa 0:4656a133ed1a 212 #define AK8963_TS1 0x0D
mfurukawa 0:4656a133ed1a 213 #define AK8963_TS2 0x0E
mfurukawa 0:4656a133ed1a 214 #define AK8963_I2CDIS 0x0F
mfurukawa 0:4656a133ed1a 215 // Read-only Reg ( ROM )
mfurukawa 0:4656a133ed1a 216 #define AK8963_ASAX 0x10
mfurukawa 0:4656a133ed1a 217 #define AK8963_ASAY 0x11
mfurukawa 0:4656a133ed1a 218 #define AK8963_ASAZ 0x12
mfurukawa 0:4656a133ed1a 219
mfurukawa 0:4656a133ed1a 220 // Configuration bits mpu9250
mfurukawa 0:4656a133ed1a 221 #define BIT_SLEEP 0x40
mfurukawa 0:4656a133ed1a 222 #define BIT_H_RESET 0x80
mfurukawa 0:4656a133ed1a 223 #define BITS_CLKSEL 0x07
mfurukawa 0:4656a133ed1a 224 #define MPU_CLK_SEL_PLLGYROX 0x01
mfurukawa 0:4656a133ed1a 225 #define MPU_CLK_SEL_PLLGYROZ 0x03
mfurukawa 0:4656a133ed1a 226 #define MPU_EXT_SYNC_GYROX 0x02
mfurukawa 0:4656a133ed1a 227 #define BITS_FS_250DPS 0x00
mfurukawa 0:4656a133ed1a 228 #define BITS_FS_500DPS 0x08
mfurukawa 0:4656a133ed1a 229 #define BITS_FS_1000DPS 0x10
mfurukawa 0:4656a133ed1a 230 #define BITS_FS_2000DPS 0x18
mfurukawa 0:4656a133ed1a 231 #define BITS_FS_2G 0x00
mfurukawa 0:4656a133ed1a 232 #define BITS_FS_4G 0x08
mfurukawa 0:4656a133ed1a 233 #define BITS_FS_8G 0x10
mfurukawa 0:4656a133ed1a 234 #define BITS_FS_16G 0x18
mfurukawa 0:4656a133ed1a 235 #define BITS_FS_MASK 0x18
mfurukawa 0:4656a133ed1a 236 #define BITS_DLPF_CFG_256HZ_NOLPF2 0x00
mfurukawa 0:4656a133ed1a 237 #define BITS_DLPF_CFG_188HZ 0x01
mfurukawa 0:4656a133ed1a 238 #define BITS_DLPF_CFG_98HZ 0x02
mfurukawa 0:4656a133ed1a 239 #define BITS_DLPF_CFG_42HZ 0x03
mfurukawa 0:4656a133ed1a 240 #define BITS_DLPF_CFG_20HZ 0x04
mfurukawa 0:4656a133ed1a 241 #define BITS_DLPF_CFG_10HZ 0x05
mfurukawa 0:4656a133ed1a 242 #define BITS_DLPF_CFG_5HZ 0x06
mfurukawa 0:4656a133ed1a 243 #define BITS_DLPF_CFG_2100HZ_NOLPF 0x07
mfurukawa 0:4656a133ed1a 244 #define BITS_DLPF_CFG_MASK 0x07
mfurukawa 0:4656a133ed1a 245 #define BIT_INT_ANYRD_2CLEAR 0x10
mfurukawa 0:4656a133ed1a 246 #define BIT_RAW_RDY_EN 0x01
mfurukawa 0:4656a133ed1a 247 #define BIT_I2C_IF_DIS 0x10
mfurukawa 0:4656a133ed1a 248
mfurukawa 0:4656a133ed1a 249 #define READ_FLAG 0x80
mfurukawa 0:4656a133ed1a 250
mfurukawa 0:4656a133ed1a 251 /* ---- Sensitivity --------------------------------------------------------- */
mfurukawa 0:4656a133ed1a 252
mfurukawa 0:4656a133ed1a 253 #define MPU9250A_2g ((float)0.000061035156f) // 0.000061035156 g/LSB
mfurukawa 0:4656a133ed1a 254 #define MPU9250A_4g ((float)0.000122070312f) // 0.000122070312 g/LSB
mfurukawa 0:4656a133ed1a 255 #define MPU9250A_8g ((float)0.000244140625f) // 0.000244140625 g/LSB
mfurukawa 0:4656a133ed1a 256 #define MPU9250A_16g ((float)0.000488281250f) // 0.000488281250 g/LSB
mfurukawa 0:4656a133ed1a 257
mfurukawa 0:4656a133ed1a 258 #define MPU9250G_250dps ((float)0.007633587786f) // 0.007633587786 dps/LSB
mfurukawa 0:4656a133ed1a 259 #define MPU9250G_500dps ((float)0.015267175572f) // 0.015267175572 dps/LSB
mfurukawa 0:4656a133ed1a 260 #define MPU9250G_1000dps ((float)0.030487804878f) // 0.030487804878 dps/LSB
mfurukawa 0:4656a133ed1a 261 #define MPU9250G_2000dps ((float)0.060975609756f) // 0.060975609756 dps/LSB
mfurukawa 0:4656a133ed1a 262
mfurukawa 0:4656a133ed1a 263 #define MPU9250M_4800uT ((float)0.6f) // 0.6 uT/LSB
mfurukawa 0:4656a133ed1a 264
mfurukawa 0:4656a133ed1a 265 #define MPU9250T_85degC ((float)0.002995177763f) // 0.002995177763 degC/LSB
mfurukawa 0:4656a133ed1a 266
mfurukawa 0:4656a133ed1a 267 #define Magnetometer_Sensitivity_Scale_Factor ((float)0.15f)