| LibDriver MPU9250 1.0.0 MPU9250 full function driver

Macros | Functions
driver_mpu9250.c File Reference

driver mpu9250 source file More...

`#include "driver_mpu9250.h"`
`#include "driver_mpu9250_code.h"`
`#include <math.h>`

Go to the source code of this file.

## Macros
#define | CHIP_NAME "TDK MPU9250"
| chip information definition More...
#define | MANUFACTURER_NAME "TDK"
#define | SUPPLY_VOLTAGE_MIN 2.4f
#define | SUPPLY_VOLTAGE_MAX 3.6f
#define | MAX_CURRENT 3.7f
#define | TEMPERATURE_MIN -40.0f
#define | TEMPERATURE_MAX 85.0f
#define | DRIVER_VERSION 1000
#define | AK8963_IIC_ADDRESS 0x0C
| chip ak8963 iic address definition More...
#define | MPU9250_REG_SELF_TEST_X_GYRO 0x00
| chip register definition More...
#define | MPU9250_REG_SELF_TEST_Y_GYRO 0x01
#define | MPU9250_REG_SELF_TEST_Z_GYRO 0x02
#define | MPU9250_REG_SELF_TEST_X_ACCEL 0x0D
#define | MPU9250_REG_SELF_TEST_Y_ACCEL 0x0E
#define | MPU9250_REG_SELF_TEST_Z_ACCEL 0x0F
#define | MPU9250_REG_XG_OFFSET_H 0x13
#define | MPU9250_REG_XG_OFFSET_L 0x14
#define | MPU9250_REG_YG_OFFSET_H 0x15
#define | MPU9250_REG_YG_OFFSET_L 0x16
#define | MPU9250_REG_ZG_OFFSET_H 0x17
#define | MPU9250_REG_ZG_OFFSET_L 0x18
#define | MPU9250_REG_SMPRT_DIV 0x19
#define | MPU9250_REG_CONFIG 0x1A
#define | MPU9250_REG_GYRO_CONFIG 0x1B
#define | MPU9250_REG_ACCEL_CONFIG 0x1C
#define | MPU9250_REG_ACCEL_CONFIG2 0x1D
#define | MPU9250_REG_LP_ACCEL_ODR 0x1E
#define | MPU9250_REG_WOM_THR 0x1F
#define | MPU9250_REG_MOTION_DURATION 0x20
#define | MPU9250_REG_FIFO_EN 0x23
#define | MPU9250_REG_I2C_MST_CTRL 0x24
#define | MPU9250_REG_I2C_MST_STATUS 0x36
#define | MPU9250_REG_I2C_MST_DELAY_CTRL 0x67
#define | MPU9250_REG_I2C_SLV0_ADDR 0x25
#define | MPU9250_REG_I2C_SLV0_REG 0x26
#define | MPU9250_REG_I2C_SLV0_CTRL 0x27
#define | MPU9250_REG_I2C_SLV0_DO 0x63
#define | MPU9250_REG_I2C_SLV1_ADDR 0x28
#define | MPU9250_REG_I2C_SLV1_REG 0x29
#define | MPU9250_REG_I2C_SLV1_CTRL 0x2A
#define | MPU9250_REG_I2C_SLV1_DO 0x64
#define | MPU9250_REG_I2C_SLV2_ADDR 0x2B
#define | MPU9250_REG_I2C_SLV2_REG 0x2C
#define | MPU9250_REG_I2C_SLV2_CTRL 0x2D
#define | MPU9250_REG_I2C_SLV2_DO 0x65
#define | MPU9250_REG_I2C_SLV3_ADDR 0x2E
#define | MPU9250_REG_I2C_SLV3_REG 0x2F
#define | MPU9250_REG_I2C_SLV3_CTRL 0x30
#define | MPU9250_REG_I2C_SLV3_DO 0x66
#define | MPU9250_REG_I2C_SLV4_ADDR 0x31
#define | MPU9250_REG_I2C_SLV4_REG 0x32
#define | MPU9250_REG_I2C_SLV4_CTRL 0x34
#define | MPU9250_REG_I2C_SLV4_DO 0x33
#define | MPU9250_REG_I2C_SLV4_DI 0x35
#define | MPU9250_REG_EXT_SENS_DATA_00 0x49
#define | MPU9250_REG_INT_PIN_CFG 0x37
#define | MPU9250_REG_INT_ENABLE 0x38
#define | MPU9250_REG_INT_STATUS 0x3A
#define | MPU9250_REG_ACCEL_XOUT_H 0x3B
#define | MPU9250_REG_ACCEL_XOUT_L 0x3C
#define | MPU9250_REG_ACCEL_YOUT_H 0x3D
#define | MPU9250_REG_ACCEL_YOUT_L 0x3E
#define | MPU9250_REG_ACCEL_ZOUT_H 0x3F
#define | MPU9250_REG_ACCEL_ZOUT_L 0x40
#define | MPU9250_REG_TEMP_OUT_H 0x41
#define | MPU9250_REG_TEMP_OUT_L 0x42
#define | MPU9250_REG_GYRO_XOUT_H 0x43
#define | MPU9250_REG_GYRO_XOUT_L 0x44
#define | MPU9250_REG_GYRO_YOUT_H 0x45
#define | MPU9250_REG_GYRO_YOUT_L 0x46
#define | MPU9250_REG_GYRO_ZOUT_H 0x47
#define | MPU9250_REG_GYRO_ZOUT_L 0x48
#define | MPU9250_REG_SIGNAL_PATH_RESET 0x68
#define | MPU9250_REG_MOT_DETECT_CTRL 0x69
#define | MPU9250_REG_USER_CTRL 0x6A
#define | MPU9250_REG_PWR_MGMT_1 0x6B
#define | MPU9250_REG_PWR_MGMT_2 0x6C
#define | MPU9250_REG_BANK_SEL 0x6D
#define | MPU9250_REG_MEM 0x6F
#define | MPU9250_REG_PROGRAM_START 0x70
#define | MPU9250_REG_FIFO_COUNTH 0x72
#define | MPU9250_REG_FIFO_COUNTL 0x73
#define | MPU9250_REG_R_W 0x74
#define | MPU9250_REG_WHO_AM_I 0x75
#define | MPU9250_REG_XA_OFFSET_H 0x77
#define | MPU9250_REG_XA_OFFSET_L 0x78
#define | MPU9250_REG_YA_OFFSET_H 0x7A
#define | MPU9250_REG_YA_OFFSET_L 0x7B
#define | MPU9250_REG_ZA_OFFSET_H 0x7D
#define | MPU9250_REG_ZA_OFFSET_L 0x7E
#define | AK8963_REG_WIA 0x00
#define | AK8963_REG_INFO 0x01
#define | AK8963_REG_ST1 0x02
#define | AK8963_REG_HXL 0x03
#define | AK8963_REG_HXH 0x04
#define | AK8963_REG_HYL 0x05
#define | AK8963_REG_HYH 0x06
#define | AK8963_REG_HZL 0x07
#define | AK8963_REG_HZH 0x08
#define | AK8963_REG_ST2 0x09
#define | AK8963_REG_CNTL1 0x0A
#define | AK8963_REG_CNTL2 0x0B
#define | AK8963_REG_ASTC 0x0C
#define | AK8963_REG_TS1 0x0D
#define | AK8963_REG_TS2 0x0E
#define | AK8963_REG_I2CDIS 0x0F
#define | AK8963_REG_ASAX 0x10
#define | AK8963_REG_ASAY 0x11
#define | AK8963_REG_ASAZ 0x12
#define | MPU9250_DMP_SAMPLE_RATE 200
| mpu9250 dmp code definition More...
#define | MPU9250_DMP_GYRO_SF (46850825LL * 200 / MPU9250_DMP_SAMPLE_RATE)
#define | MPU9250_DMP_D_PEDSTD_TIMECTR 964
#define | MPU9250_DMP_D_PEDSTD_STEPCTR (768 + 0x60)
#define | MPU9250_DMP_D_1_36 (256 + 36)
#define | MPU9250_DMP_D_1_40 (256 + 40)
#define | MPU9250_DMP_D_1_44 (256 + 44)
#define | MPU9250_DMP_D_1_72 (256 + 72)
#define | MPU9250_DMP_D_1_79 (256 + 79)
#define | MPU9250_DMP_D_1_88 (256 + 88)
#define | MPU9250_DMP_D_1_90 (256 + 90)
#define | MPU9250_DMP_D_1_92 (256 + 92)
#define | MPU9250_DMP_D_1_218 (256 + 218)
#define | MPU9250_DMP_D_0_22 (512 + 22)
#define | MPU9250_DMP_D_0_104 104
#define | MPU9250_DMP_TAPW_MIN 478
#define | MPU9250_DMP_TAP_THX 468
#define | MPU9250_DMP_TAP_THY 472
#define | MPU9250_DMP_TAP_THZ 476
#define | MPU9250_DMP_CFG_6 2753
#define | MPU9250_DMP_CFG_8 2718
#define | MPU9250_DMP_CFG_MOTION_BIAS 1208
#define | MPU9250_DMP_CFG_LP_QUAT 2712
#define | MPU9250_DMP_CFG_FIFO_ON_EVENT 2690
#define | MPU9250_DMP_FCFG_1 1062
#define | MPU9250_DMP_FCFG_2 1066
#define | MPU9250_DMP_FCFG_3 1088
#define | MPU9250_DMP_FCFG_7 1073
#define | MPU9250_DMP_D_EXT_GYRO_BIAS_X (61 * 16)
#define | MPU9250_DMP_D_EXT_GYRO_BIAS_Y (61 * 16 + 4)
#define | MPU9250_DMP_D_EXT_GYRO_BIAS_Z (61 * 16 + 8)
#define | MPU9250_DMP_D_ACCEL_BIAS 660
#define | MPU9250_DMP_FEATURE_SEND_ANY_GYRO
#define | MPU9250_DMP_CFG_15 2727
#define | MPU9250_DMP_CFG_27 2742
#define | MPU9250_DMP_CFG_GYRO_RAW_DATA 2722
#define | MPU9250_DMP_CFG_20 2224
#define | MPU9250_DMP_CFG_ORIENT_INT 1853
#define | MPU9250_DMP_QUAT_ERROR_THRESH (1L << 24)
#define | MPU9250_DMP_QUAT_MAG_SQ_NORMALIZED (1L << 28)
#define | MPU9250_DMP_QUAT_MAG_SQ_MIN
#define | MPU9250_DMP_QUAT_MAG_SQ_MAX
#define | MPU9250_DMP_INT_SRC_TAP 0x01
#define | MPU9250_DMP_INT_SRC_ORIENT 0x08
#define | MPU9250_DMP_TAP_THRESH 250
#define | MPU9250_DMP_TAP_MIN_TAP_COUNT 1
#define | MPU9250_DMP_TAP_TIME 100
#define | MPU9250_DMP_TAP_TIME_MULTI 200
#define | MPU9250_DMP_SHAKE_REJECT_THRESH 200
#define | MPU9250_DMP_SHAKE_REJECT_TIME 40
#define | MPU9250_DMP_SHAKE_REJECT_TIMEOUT 10
#define | MIN(a, b) (((a) < (b)) ? (a) : (b))
| inner function definition More...

## Functions
uint8_t | mpu9250_dmp_load_firmware (mpu9250_handle_t *handle)
| load the dmp firmware More...
uint8_t | mpu9250_dmp_set_pedometer_walk_time (mpu9250_handle_t *handle, uint32_t ms)
| dmp set the pedometer walk time More...
uint8_t | mpu9250_dmp_get_pedometer_walk_time (mpu9250_handle_t *handle, uint32_t *ms)
| dmp get the pedometer walk time More...
uint8_t | mpu9250_dmp_set_pedometer_step_count (mpu9250_handle_t *handle, uint32_t count)
| dmp set the pedometer step count More...
uint8_t | mpu9250_dmp_get_pedometer_step_count (mpu9250_handle_t *handle, uint32_t *count)
| dmp get the pedometer step count More...
uint8_t | mpu9250_dmp_set_shake_reject_timeout (mpu9250_handle_t *handle, uint16_t ms)
| dmp set the shake reject timeout More...
uint8_t | mpu9250_dmp_get_shake_reject_timeout (mpu9250_handle_t *handle, uint16_t *ms)
| dmp get the shake reject timeout More...
uint8_t | mpu9250_dmp_set_shake_reject_time (mpu9250_handle_t *handle, uint16_t ms)
| dmp set the shake reject time More...
uint8_t | mpu9250_dmp_get_shake_reject_time (mpu9250_handle_t *handle, uint16_t *ms)
| dmp get the shake reject time More...
uint8_t | mpu9250_dmp_set_shake_reject_thresh (mpu9250_handle_t *handle, uint16_t dps)
| dmp set the shake reject thresh More...
uint8_t | mpu9250_dmp_get_shake_reject_thresh (mpu9250_handle_t *handle, uint16_t *dps)
| dmp get the shake reject thresh More...
uint8_t | mpu9250_dmp_set_tap_time_multi (mpu9250_handle_t *handle, uint16_t ms)
| dmp set max time between taps to register as a multi tap More...
uint8_t | mpu9250_dmp_get_tap_time_multi (mpu9250_handle_t *handle, uint16_t *ms)
| dmp get max time between taps to register as a multi tap More...
uint8_t | mpu9250_dmp_set_tap_time (mpu9250_handle_t *handle, uint16_t ms)
| dmp set the tap time More...
uint8_t | mpu9250_dmp_get_tap_time (mpu9250_handle_t *handle, uint16_t *ms)
| dmp get the tap time More...
uint8_t | mpu9250_dmp_set_min_tap_count (mpu9250_handle_t *handle, uint8_t cnt)
| dmp set the min tap count More...
uint8_t | mpu9250_dmp_get_min_tap_count (mpu9250_handle_t *handle, uint8_t *cnt)
| dmp get the min tap count More...
uint8_t | mpu9250_dmp_set_gyro_calibrate (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| dmp enable or disable gyro calibrate More...
uint8_t | mpu9250_dmp_set_3x_quaternion (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| dmp enable or disable generate 3 axis quaternions from dmp More...
uint8_t | mpu9250_dmp_set_6x_quaternion (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| dmp enable or disable generate 6 axis quaternions from dmp More...
uint8_t | mpu9250_dmp_set_interrupt_mode (mpu9250_handle_t *handle, mpu9250_dmp_interrupt_mode_t mode)
| dmp set the interrupt mode More...
uint8_t | mpu9250_dmp_set_gyro_bias (mpu9250_handle_t *handle, int32_t bias[3])
| dmp set the gyro bias More...
uint8_t | mpu9250_dmp_set_accel_bias (mpu9250_handle_t *handle, int32_t bias[3])
| dmp set the accel bias More...
uint8_t | mpu9250_dmp_set_orientation (mpu9250_handle_t *handle, int8_t mat[9])
| dmp set the orientation More...
uint8_t | mpu9250_dmp_set_feature (mpu9250_handle_t *handle, uint16_t mask)
| dmp enable or disable the dmp feature More...
uint8_t | mpu9250_dmp_set_fifo_rate (mpu9250_handle_t *handle, uint16_t rate)
| dmp set the fifo rate More...
uint8_t | mpu9250_dmp_get_fifo_rate (mpu9250_handle_t *handle, uint16_t *rate)
| dmp get the fifo rate More...
uint8_t | mpu9250_dmp_set_tap_axes (mpu9250_handle_t *handle, mpu9250_axis_t axis, mpu9250_bool_t enable)
| dmp enable or disable the tap axes More...
uint8_t | mpu9250_dmp_get_tap_axes (mpu9250_handle_t *handle, mpu9250_axis_t axis, mpu9250_bool_t *enable)
| dmp get the tap axes status More...
uint8_t | mpu9250_dmp_set_tap_thresh (mpu9250_handle_t *handle, mpu9250_axis_t axis, uint16_t mg_ms)
| dmp set the tap thresh More...
uint8_t | mpu9250_dmp_get_tap_thresh (mpu9250_handle_t *handle, mpu9250_axis_t axis, uint16_t *mg_ms)
| dmp get the tap thresh More...
uint8_t | mpu9250_dmp_read (mpu9250_handle_t *handle, int16_t(*accel_raw)[3], float(*accel_g)[3], int16_t(*gyro_raw)[3], float(*gyro_dps)[3], int32_t(*quat)[4], float *pitch, float *roll, float *yaw, uint16_t *l)
| dmp read the data More...
uint8_t | mpu9250_dmp_set_tap_callback (mpu9250_handle_t *handle, void(*callback)(uint8_t count, uint8_t direction))
| dmp set the tap callback More...
uint8_t | mpu9250_dmp_set_orient_callback (mpu9250_handle_t *handle, void(*callback)(uint8_t orientation))
| dmp set the orient callback More...
uint8_t | mpu9250_dmp_set_enable (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable the dmp More...
uint8_t | mpu9250_dmp_gyro_accel_raw_offset_convert (mpu9250_handle_t *handle, int32_t gyro_offset_raw[3], int32_t accel_offset_raw[3], int32_t gyro_offset[3], int32_t accel_offset[3])
| dmp gyro accel raw offset convert More...
uint8_t | mpu9250_set_interface (mpu9250_handle_t *handle, mpu9250_interface_t interface)
| set the chip interface More...
uint8_t | mpu9250_get_interface (mpu9250_handle_t *handle, mpu9250_interface_t *interface)
| get the chip interface More...
uint8_t | mpu9250_set_addr_pin (mpu9250_handle_t *handle, mpu9250_address_t addr_pin)
| set the chip address pin More...
uint8_t | mpu9250_get_addr_pin (mpu9250_handle_t *handle, mpu9250_address_t *addr_pin)
| get the chip address pin More...
uint8_t | mpu9250_init (mpu9250_handle_t *handle)
| initialize the chip More...
uint8_t | mpu9250_deinit (mpu9250_handle_t *handle)
| close the chip More...
uint8_t | mpu9250_read (mpu9250_handle_t *handle, int16_t(*accel_raw)[3], float(*accel_g)[3], int16_t(*gyro_raw)[3], float(*gyro_dps)[3], int16_t(*mag_raw)[3], float(*mag_ut)[3], uint16_t *len)
| read the data More...
uint8_t | mpu9250_read_temperature (mpu9250_handle_t *handle, int16_t(*raw), float *degrees)
| read the temperature More...
uint8_t | mpu9250_irq_handler (mpu9250_handle_t *handle)
| irq handler More...
uint8_t | mpu9250_mag_init (mpu9250_handle_t *handle)
| initialize the magnetometer of mpu9250 More...
uint8_t | mpu9250_mag_deinit (mpu9250_handle_t *handle)
| magnetometer deinit More...
uint8_t | mpu9250_mag_read (mpu9250_handle_t *handle, int16_t mag_raw[3], float mag_ut[3])
| mag read the data More...
uint8_t | mpu9250_mag_get_info (mpu9250_handle_t *handle, uint8_t *info)
| magnetometer get the information More...
uint8_t | mpu9250_mag_get_status1 (mpu9250_handle_t *handle, uint8_t *status)
| magnetometer get the status1 More...
uint8_t | mpu9250_mag_get_status2 (mpu9250_handle_t *handle, uint8_t *status)
| magnetometer get the status2 More...
uint8_t | mpu9250_mag_set_mode (mpu9250_handle_t *handle, mpu9250_magnetometer_mode_t mode)
| magnetometer set the mode More...
uint8_t | mpu9250_mag_get_mode (mpu9250_handle_t *handle, mpu9250_magnetometer_mode_t *mode)
| magnetometer get the mode More...
uint8_t | mpu9250_mag_set_bits (mpu9250_handle_t *handle, mpu9250_magnetometer_bits_t bits)
| magnetometer set the bits More...
uint8_t | mpu9250_mag_get_bits (mpu9250_handle_t *handle, mpu9250_magnetometer_bits_t *bits)
| magnetometer get the bits More...
uint8_t | mpu9250_mag_set_reset (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| magnetometer enable or disable reset More...
uint8_t | mpu9250_mag_get_reset (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| magnetometer get the reset status More...
uint8_t | mpu9250_mag_set_self_test (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| magnetometer enable or disable self test More...
uint8_t | mpu9250_mag_get_self_test (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| magnetometer get the self test status More...
uint8_t | mpu9250_mag_iic_disable (mpu9250_handle_t *handle)
| magnetometer disable the iic More...
uint8_t | mpu9250_mag_get_asa (mpu9250_handle_t *handle, uint8_t asa[3])
| magnetometer get the asa data More...
uint8_t | mpu9250_mag_set_fifo_mode (mpu9250_handle_t *handle)
| magnetometer set into fifo mode More...
uint8_t | mpu9250_set_fifo (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable fifo More...
uint8_t | mpu9250_get_fifo (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the fifo status More...
uint8_t | mpu9250_force_fifo_reset (mpu9250_handle_t *handle)
| force reset the fifo More...
uint8_t | mpu9250_set_iic_master (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable the iic master mode More...
uint8_t | mpu9250_get_iic_master (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the iic master status More...
uint8_t | mpu9250_set_disable_iic_slave (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable the iic slave mode More...
uint8_t | mpu9250_get_disable_iic_slave (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the iic slave status More...
uint8_t | mpu9250_fifo_reset (mpu9250_handle_t *handle)
| reset the fifo More...
uint8_t | mpu9250_get_fifo_reset (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the fifo reset status More...
uint8_t | mpu9250_iic_master_reset (mpu9250_handle_t *handle)
| reset the iic master controller More...
uint8_t | mpu9250_get_iic_master_reset (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the iic master reset status More...
uint8_t | mpu9250_sensor_reset (mpu9250_handle_t *handle)
| reset all sensors More...
uint8_t | mpu9250_get_sensor_reset (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the sensor reset status More...
uint8_t | mpu9250_device_reset (mpu9250_handle_t *handle)
| reset the chip More...
uint8_t | mpu9250_get_device_reset (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the device reset status More...
uint8_t | mpu9250_set_clock_source (mpu9250_handle_t *handle, mpu9250_clock_source_t clock_source)
| set the chip clock source More...
uint8_t | mpu9250_get_clock_source (mpu9250_handle_t *handle, mpu9250_clock_source_t *clock_source)
| get the chip clock source More...
uint8_t | mpu9250_set_ptat (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable the temperature sensor More...
uint8_t | mpu9250_get_ptat (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the temperature sensor status More...
uint8_t | mpu9250_set_cycle_wake_up (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable the cycle wake up mode More...
uint8_t | mpu9250_get_cycle_wake_up (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the cycle wake up mode status More...
uint8_t | mpu9250_set_sleep (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable the sleep mode More...
uint8_t | mpu9250_get_sleep (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the sleep status More...
uint8_t | mpu9250_set_gyro_standby (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable the gyro standby More...
uint8_t | mpu9250_get_gyro_standby (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the gyro standby status More...
uint8_t | mpu9250_set_standby_mode (mpu9250_handle_t *handle, mpu9250_source_t source, mpu9250_bool_t enable)
| set source into standby mode More...
uint8_t | mpu9250_get_standby_mode (mpu9250_handle_t *handle, mpu9250_source_t source, mpu9250_bool_t *enable)
| get the source mode More...
uint8_t | mpu9250_get_fifo_count (mpu9250_handle_t *handle, uint16_t *count)
| get the fifo counter value More...
uint8_t | mpu9250_fifo_get (mpu9250_handle_t *handle, uint8_t *buf, uint16_t len)
| fifo read bytes More...
uint8_t | mpu9250_fifo_set (mpu9250_handle_t *handle, uint8_t *buf, uint16_t len)
| fifo write bytes More...
uint8_t | mpu9250_set_signal_path_reset (mpu9250_handle_t *handle, mpu9250_signal_path_reset_t path)
| set the signal path reset More...
uint8_t | mpu9250_set_sample_rate_divider (mpu9250_handle_t *handle, uint8_t d)
| set the sample rate divider More...
uint8_t | mpu9250_get_sample_rate_divider (mpu9250_handle_t *handle, uint8_t *d)
| get the sample rate divider More...
uint8_t | mpu9250_set_extern_sync (mpu9250_handle_t *handle, mpu9250_extern_sync_t sync)
| set the extern sync type More...
uint8_t | mpu9250_get_extern_sync (mpu9250_handle_t *handle, mpu9250_extern_sync_t *sync)
| get the extern sync type More...
uint8_t | mpu9250_set_low_pass_filter (mpu9250_handle_t *handle, mpu9250_low_pass_filter_t filter)
| set the low pass filter More...
uint8_t | mpu9250_get_low_pass_filter (mpu9250_handle_t *handle, mpu9250_low_pass_filter_t *filter)
| get the low pass filter More...
uint8_t | mpu9250_set_fifo_mode (mpu9250_handle_t *handle, mpu9250_fifo_mode mode)
| set the fifo mode More...
uint8_t | mpu9250_get_fifo_mode (mpu9250_handle_t *handle, mpu9250_fifo_mode *mode)
| get the fifo mode More...
uint8_t | mpu9250_set_gyroscope_test (mpu9250_handle_t *handle, mpu9250_axis_t axis, mpu9250_bool_t enable)
| set the gyroscope test More...
uint8_t | mpu9250_get_gyroscope_test (mpu9250_handle_t *handle, mpu9250_axis_t axis, mpu9250_bool_t *enable)
| get the gyroscope test More...
uint8_t | mpu9250_set_gyroscope_range (mpu9250_handle_t *handle, mpu9250_gyroscope_range_t range)
| set the gyroscope range More...
uint8_t | mpu9250_get_gyroscope_range (mpu9250_handle_t *handle, mpu9250_gyroscope_range_t *range)
| get the gyroscope range More...
uint8_t | mpu9250_set_gyroscope_choice (mpu9250_handle_t *handle, uint8_t choice)
| set the gyroscope choice More...
uint8_t | mpu9250_get_gyroscope_choice (mpu9250_handle_t *handle, uint8_t *choice)
| get the gyroscope choice More...
uint8_t | mpu9250_set_accelerometer_test (mpu9250_handle_t *handle, mpu9250_axis_t axis, mpu9250_bool_t enable)
| set the accelerometer test More...
uint8_t | mpu9250_get_accelerometer_test (mpu9250_handle_t *handle, mpu9250_axis_t axis, mpu9250_bool_t *enable)
| get the accelerometer test More...
uint8_t | mpu9250_set_accelerometer_range (mpu9250_handle_t *handle, mpu9250_accelerometer_range_t range)
| set the accelerometer range More...
uint8_t | mpu9250_get_accelerometer_range (mpu9250_handle_t *handle, mpu9250_accelerometer_range_t *range)
| get the accelerometer range More...
uint8_t | mpu9250_set_fifo_1024kb (mpu9250_handle_t *handle)
| set fifo 1024kb More...
uint8_t | mpu9250_set_accelerometer_choice (mpu9250_handle_t *handle, uint8_t choice)
| set the accelerometer choice More...
uint8_t | mpu9250_get_accelerometer_choice (mpu9250_handle_t *handle, uint8_t *choice)
| get the accelerometer choice More...
uint8_t | mpu9250_set_accelerometer_low_pass_filter (mpu9250_handle_t *handle, mpu9250_accelerometer_low_pass_filter_t filter)
| set the accelerometer low pass filter More...
uint8_t | mpu9250_get_accelerometer_low_pass_filter (mpu9250_handle_t *handle, mpu9250_accelerometer_low_pass_filter_t *filter)
| get the accelerometer low pass filter More...
uint8_t | mpu9250_set_low_power_accel_output_rate (mpu9250_handle_t *handle, mpu9250_low_power_accel_output_rate_t rate)
| set the low power accel output rate More...
uint8_t | mpu9250_get_low_power_accel_output_rate (mpu9250_handle_t *handle, mpu9250_low_power_accel_output_rate_t *rate)
| get the low power accel output rate More...
uint8_t | mpu9250_set_wake_on_motion (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable wake on motion More...
uint8_t | mpu9250_get_wake_on_motion (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the wake on motion status More...
uint8_t | mpu9250_set_accel_compare_with_previous_sample (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable accel compare with previous sample More...
uint8_t | mpu9250_get_accel_compare_with_previous_sample (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the accel compare with previous sample status More...
uint8_t | mpu9250_set_fifo_enable (mpu9250_handle_t *handle, mpu9250_fifo_t fifo, mpu9250_bool_t enable)
| enable or disable the fifo function More...
uint8_t | mpu9250_get_fifo_enable (mpu9250_handle_t *handle, mpu9250_fifo_t fifo, mpu9250_bool_t *enable)
| get the fifo function status More...
uint8_t | mpu9250_set_interrupt_level (mpu9250_handle_t *handle, mpu9250_pin_level_t level)
| set the interrupt level More...
uint8_t | mpu9250_get_interrupt_level (mpu9250_handle_t *handle, mpu9250_pin_level_t *level)
| get the interrupt level More...
uint8_t | mpu9250_set_interrupt_pin_type (mpu9250_handle_t *handle, mpu9250_pin_type_t type)
| set the interrupt pin type More...
uint8_t | mpu9250_get_interrupt_pin_type (mpu9250_handle_t *handle, mpu9250_pin_type_t *type)
| get the interrupt pin type More...
uint8_t | mpu9250_set_interrupt_latch (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable the interrupt latch More...
uint8_t | mpu9250_get_interrupt_latch (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the interrupt latch status More...
uint8_t | mpu9250_set_interrupt_read_clear (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable the interrupt reading clear More...
uint8_t | mpu9250_get_interrupt_read_clear (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the interrupt reading clear status More...
uint8_t | mpu9250_set_fsync_interrupt_level (mpu9250_handle_t *handle, mpu9250_pin_level_t level)
| set the fsync interrupt level More...
uint8_t | mpu9250_get_fsync_interrupt_level (mpu9250_handle_t *handle, mpu9250_pin_level_t *level)
| get the fsync interrupt level More...
uint8_t | mpu9250_set_fsync_interrupt (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable the fsync interrupt More...
uint8_t | mpu9250_get_fsync_interrupt (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the fsync interrupt status More...
uint8_t | mpu9250_set_iic_bypass (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable the iic bypass More...
uint8_t | mpu9250_get_iic_bypass (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the iic bypass status More...
uint8_t | mpu9250_set_interrupt (mpu9250_handle_t *handle, mpu9250_interrupt_t type, mpu9250_bool_t enable)
| enable or disable the interrupt More...
uint8_t | mpu9250_get_interrupt (mpu9250_handle_t *handle, mpu9250_interrupt_t type, mpu9250_bool_t *enable)
| get the interrupt status More...
uint8_t | mpu9250_get_interrupt_status (mpu9250_handle_t *handle, uint8_t *status)
| get the interrupt status More...
uint8_t | mpu9250_set_gyroscope_x_test (mpu9250_handle_t *handle, uint8_t data)
| set the gyroscope x test More...
uint8_t | mpu9250_get_gyroscope_x_test (mpu9250_handle_t *handle, uint8_t *data)
| get the gyroscope x test More...
uint8_t | mpu9250_set_gyroscope_y_test (mpu9250_handle_t *handle, uint8_t data)
| set the gyroscope y test More...
uint8_t | mpu9250_get_gyroscope_y_test (mpu9250_handle_t *handle, uint8_t *data)
| get the gyroscope y test More...
uint8_t | mpu9250_set_gyroscope_z_test (mpu9250_handle_t *handle, uint8_t data)
| set the gyroscope z test More...
uint8_t | mpu9250_get_gyroscope_z_test (mpu9250_handle_t *handle, uint8_t *data)
| get the gyroscope z test More...
uint8_t | mpu9250_set_accelerometer_x_test (mpu9250_handle_t *handle, uint8_t data)
| set the accelerometer x test More...
uint8_t | mpu9250_get_accelerometer_x_test (mpu9250_handle_t *handle, uint8_t *data)
| get the accelerometer x test More...
uint8_t | mpu9250_set_accelerometer_y_test (mpu9250_handle_t *handle, uint8_t data)
| set the accelerometer y test More...
uint8_t | mpu9250_get_accelerometer_y_test (mpu9250_handle_t *handle, uint8_t *data)
| get the accelerometer y test More...
uint8_t | mpu9250_set_accelerometer_z_test (mpu9250_handle_t *handle, uint8_t data)
| set the accelerometer z test More...
uint8_t | mpu9250_get_accelerometer_z_test (mpu9250_handle_t *handle, uint8_t *data)
| get the accelerometer z test More...
uint8_t | mpu9250_set_accelerometer_x_offset (mpu9250_handle_t *handle, int16_t offset)
| set the accelerometer x offset More...
uint8_t | mpu9250_get_accelerometer_x_offset (mpu9250_handle_t *handle, int16_t *offset)
| get the accelerometer x offset More...
uint8_t | mpu9250_set_accelerometer_y_offset (mpu9250_handle_t *handle, int16_t offset)
| set the accelerometer y offset More...
uint8_t | mpu9250_get_accelerometer_y_offset (mpu9250_handle_t *handle, int16_t *offset)
| get the accelerometer y offset More...
uint8_t | mpu9250_set_accelerometer_z_offset (mpu9250_handle_t *handle, int16_t offset)
| set the accelerometer z offset More...
uint8_t | mpu9250_get_accelerometer_z_offset (mpu9250_handle_t *handle, int16_t *offset)
| get the accelerometer z offset More...
uint8_t | mpu9250_accelerometer_offset_convert_to_register (mpu9250_handle_t *handle, float mg, int16_t *reg)
| convert the accelerometer offset to the register raw data More...
uint8_t | mpu9250_accelerometer_offset_convert_to_data (mpu9250_handle_t *handle, int16_t reg, float *mg)
| convert the register raw data to the accelerometer offset More...
uint8_t | mpu9250_set_gyro_x_offset (mpu9250_handle_t *handle, int16_t offset)
| set the gyro x offset More...
uint8_t | mpu9250_get_gyro_x_offset (mpu9250_handle_t *handle, int16_t *offset)
| get the gyro x offset More...
uint8_t | mpu9250_set_gyro_y_offset (mpu9250_handle_t *handle, int16_t offset)
| set the gyro y offset More...
uint8_t | mpu9250_get_gyro_y_offset (mpu9250_handle_t *handle, int16_t *offset)
| get the gyro y offset More...
uint8_t | mpu9250_set_gyro_z_offset (mpu9250_handle_t *handle, int16_t offset)
| set the gyro z offset More...
uint8_t | mpu9250_get_gyro_z_offset (mpu9250_handle_t *handle, int16_t *offset)
| get the gyro z offset More...
uint8_t | mpu9250_gyro_offset_convert_to_register (mpu9250_handle_t *handle, float dps, int16_t *reg)
| convert the gyro offset to the register raw data More...
uint8_t | mpu9250_gyro_offset_convert_to_data (mpu9250_handle_t *handle, int16_t reg, float *dps)
| convert the register raw data to the gyro offset More...
uint8_t | mpu9250_set_motion_threshold (mpu9250_handle_t *handle, uint8_t threshold)
| set the motion_threshold More...
uint8_t | mpu9250_get_motion_threshold (mpu9250_handle_t *handle, uint8_t *threshold)
| get the motion_threshold More...
uint8_t | mpu9250_motion_threshold_convert_to_register (mpu9250_handle_t *handle, float mg, uint8_t *reg)
| convert the motion threshold to the register raw data More...
uint8_t | mpu9250_motion_threshold_convert_to_data (mpu9250_handle_t *handle, uint8_t reg, float *mg)
| convert the register raw data to the motion threshold More...
uint8_t | mpu9250_self_test (mpu9250_handle_t *handle, int32_t gyro_offset_raw[3], int32_t accel_offset_raw[3])
| run the self test More...
uint8_t | mpu9250_set_iic_clock (mpu9250_handle_t *handle, mpu9250_iic_clock_t clk)
| set the iic clock More...
uint8_t | mpu9250_get_iic_clock (mpu9250_handle_t *handle, mpu9250_iic_clock_t *clk)
| get the iic clock More...
uint8_t | mpu9250_set_iic_multi_master (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable iic multi master More...
uint8_t | mpu9250_get_iic_multi_master (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the iic multi master status More...
uint8_t | mpu9250_set_iic_wait_for_external_sensor (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable iic wait for external sensor More...
uint8_t | mpu9250_get_iic_wait_for_external_sensor (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the iic wait for external sensor status More...
uint8_t | mpu9250_set_iic_read_mode (mpu9250_handle_t *handle, mpu9250_iic_read_mode_t mode)
| set the iic read mode More...
uint8_t | mpu9250_get_iic_read_mode (mpu9250_handle_t *handle, mpu9250_iic_read_mode_t *mode)
| get the iic read mode More...
uint8_t | mpu9250_set_iic_fifo_enable (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, mpu9250_bool_t enable)
| enable or disable the iic fifo More...
uint8_t | mpu9250_get_iic_fifo_enable (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, mpu9250_bool_t *enable)
| get the iic fifo status More...
uint8_t | mpu9250_set_iic_mode (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, mpu9250_iic_mode_t mode)
| set the iic mode More...
uint8_t | mpu9250_get_iic_mode (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, mpu9250_iic_mode_t *mode)
| get the iic mode More...
uint8_t | mpu9250_set_iic_address (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, uint8_t addr_7bit)
| set the iic address More...
uint8_t | mpu9250_get_iic_address (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, uint8_t *addr_7bit)
| get the iic address More...
uint8_t | mpu9250_set_iic_register (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, uint8_t reg)
| set the iic register More...
uint8_t | mpu9250_get_iic_register (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, uint8_t *reg)
| get the iic register More...
uint8_t | mpu9250_set_iic_data_out (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, uint8_t data)
| set the iic data out More...
uint8_t | mpu9250_get_iic_data_out (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, uint8_t *data)
| get the iic data out More...
uint8_t | mpu9250_set_iic_enable (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, mpu9250_bool_t enable)
| enable or disable the iic More...
uint8_t | mpu9250_get_iic_enable (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, mpu9250_bool_t *enable)
| get the iic status More...
uint8_t | mpu9250_set_iic_byte_swap (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, mpu9250_bool_t enable)
| enable or disable the iic byte swap More...
uint8_t | mpu9250_get_iic_byte_swap (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, mpu9250_bool_t *enable)
| get the iic byte swap status More...
uint8_t | mpu9250_set_iic_transaction_mode (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, mpu9250_iic_transaction_mode_t mode)
| set the iic transaction mode More...
uint8_t | mpu9250_get_iic_transaction_mode (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, mpu9250_iic_transaction_mode_t *mode)
| get the iic transaction mode More...
uint8_t | mpu9250_set_iic_group_order (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, mpu9250_iic_group_order_t order)
| set the iic group order More...
uint8_t | mpu9250_get_iic_group_order (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, mpu9250_iic_group_order_t *order)
| get the iic group order More...
uint8_t | mpu9250_set_iic_transferred_len (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, uint8_t len)
| set the iic transferred length More...
uint8_t | mpu9250_get_iic_transferred_len (mpu9250_handle_t *handle, mpu9250_iic_slave_t slave, uint8_t *len)
| get the iic transferred length More...
uint8_t | mpu9250_get_iic_status (mpu9250_handle_t *handle, uint8_t *status)
| get the iic status More...
uint8_t | mpu9250_set_iic_delay_enable (mpu9250_handle_t *handle, mpu9250_iic_delay_t delay, mpu9250_bool_t enable)
| enable or disable the iic delay More...
uint8_t | mpu9250_get_iic_delay_enable (mpu9250_handle_t *handle, mpu9250_iic_delay_t delay, mpu9250_bool_t *enable)
| get the iic delay status More...
uint8_t | mpu9250_set_iic4_enable (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable the iic4 More...
uint8_t | mpu9250_get_iic4_enable (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the iic4 status More...
uint8_t | mpu9250_set_iic4_interrupt (mpu9250_handle_t *handle, mpu9250_bool_t enable)
| enable or disable the iic4 interrupt More...
uint8_t | mpu9250_get_iic4_interrupt (mpu9250_handle_t *handle, mpu9250_bool_t *enable)
| get the iic4 interrupt status More...
uint8_t | mpu9250_set_iic4_transaction_mode (mpu9250_handle_t *handle, mpu9250_iic4_transaction_mode_t mode)
| set the iic4 transaction mode More...
uint8_t | mpu9250_get_iic4_transaction_mode (mpu9250_handle_t *handle, mpu9250_iic4_transaction_mode_t *mode)
| get the iic4 transaction mode More...
uint8_t | mpu9250_set_iic_delay (mpu9250_handle_t *handle, uint8_t delay)
| set the iic delay More...
uint8_t | mpu9250_get_iic_delay (mpu9250_handle_t *handle, uint8_t *delay)
| get the iic delay More...
uint8_t | mpu9250_set_iic4_data_out (mpu9250_handle_t *handle, uint8_t data)
| set the iic4 data out More...
uint8_t | mpu9250_get_iic4_data_out (mpu9250_handle_t *handle, uint8_t *data)
| get the iic4 data out More...
uint8_t | mpu9250_set_iic4_data_in (mpu9250_handle_t *handle, uint8_t data)
| set the iic4 data in More...
uint8_t | mpu9250_get_iic4_data_in (mpu9250_handle_t *handle, uint8_t *data)
| get the iic4 data in More...
uint8_t | mpu9250_read_extern_sensor_data (mpu9250_handle_t *handle, uint8_t *data, uint8_t len)
| read the extern sensor data More...
uint8_t | mpu9250_set_reg (mpu9250_handle_t *handle, uint8_t reg, uint8_t *buf, uint16_t len)
| set the chip register More...
uint8_t | mpu9250_get_reg (mpu9250_handle_t *handle, uint8_t reg, uint8_t *buf, uint16_t len)
| get the chip register More...
uint8_t | mpu9250_info (mpu9250_info_t *info)
| get the chip's information More...

## Detailed Description

driver mpu9250 source file

Copyright (c) 2015 - present LibDriver All rights reserved

The MIT License (MIT)

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Version
  1.0.0

Author
  Shifeng Li

Date
  2022-08-30

### history

Date | Version | Author | Description
--- | --- | --- | ---
2022/08/30 | 1.0 | Shifeng Li | first upload

Definition in file driver_mpu9250.c.

## Macro Definition Documentation

## ◆ AK8963_IIC_ADDRESS

#define AK8963_IIC_ADDRESS 0x0C

chip ak8963 iic address definition

ak8963 iic address

Definition at line 56 of file driver_mpu9250.c.

## ◆ AK8963_REG_ASAX

#define AK8963_REG_ASAX 0x10

x axis sensitivity adjustment value register

Definition at line 158 of file driver_mpu9250.c.

## ◆ AK8963_REG_ASAY

#define AK8963_REG_ASAY 0x11

y axis sensitivity adjustment value register

Definition at line 159 of file driver_mpu9250.c.

## ◆ AK8963_REG_ASAZ

#define AK8963_REG_ASAZ 0x12

z axis sensitivity adjustment value register

Definition at line 160 of file driver_mpu9250.c.

## ◆ AK8963_REG_ASTC

#define AK8963_REG_ASTC 0x0C

self test register

Definition at line 154 of file driver_mpu9250.c.

## ◆ AK8963_REG_CNTL1

#define AK8963_REG_CNTL1 0x0A

control 1 register

Definition at line 152 of file driver_mpu9250.c.

## ◆ AK8963_REG_CNTL2

#define AK8963_REG_CNTL2 0x0B

control 2 register

Definition at line 153 of file driver_mpu9250.c.

## ◆ AK8963_REG_HXH

#define AK8963_REG_HXH 0x04

x axis data low register

Definition at line 146 of file driver_mpu9250.c.

## ◆ AK8963_REG_HXL

#define AK8963_REG_HXL 0x03

x axis data high register

Definition at line 145 of file driver_mpu9250.c.

## ◆ AK8963_REG_HYH

#define AK8963_REG_HYH 0x06

y axis data low register

Definition at line 148 of file driver_mpu9250.c.

## ◆ AK8963_REG_HYL

#define AK8963_REG_HYL 0x05

y axis data high register

Definition at line 147 of file driver_mpu9250.c.

## ◆ AK8963_REG_HZH

#define AK8963_REG_HZH 0x08

z axis data low register

Definition at line 150 of file driver_mpu9250.c.

## ◆ AK8963_REG_HZL

#define AK8963_REG_HZL 0x07

z axis data high register

Definition at line 149 of file driver_mpu9250.c.

## ◆ AK8963_REG_I2CDIS

#define AK8963_REG_I2CDIS 0x0F

iic disable register

Definition at line 157 of file driver_mpu9250.c.

## ◆ AK8963_REG_INFO

#define AK8963_REG_INFO 0x01

information register

Definition at line 143 of file driver_mpu9250.c.

## ◆ AK8963_REG_ST1

#define AK8963_REG_ST1 0x02

status 1 register

Definition at line 144 of file driver_mpu9250.c.

## ◆ AK8963_REG_ST2

#define AK8963_REG_ST2 0x09

status 2 register

Definition at line 151 of file driver_mpu9250.c.

## ◆ AK8963_REG_TS1

#define AK8963_REG_TS1 0x0D

test 1 register

Definition at line 155 of file driver_mpu9250.c.

## ◆ AK8963_REG_TS2

#define AK8963_REG_TS2 0x0E

test 2 register

Definition at line 156 of file driver_mpu9250.c.

## ◆ AK8963_REG_WIA

#define AK8963_REG_WIA 0x00

device id register

Definition at line 142 of file driver_mpu9250.c.

## ◆ CHIP_NAME

#define CHIP_NAME "TDK MPU9250"

chip information definition

chip name

Definition at line 44 of file driver_mpu9250.c.

## ◆ DRIVER_VERSION

#define DRIVER_VERSION 1000

driver version

Definition at line 51 of file driver_mpu9250.c.

## ◆ MANUFACTURER_NAME

#define MANUFACTURER_NAME "TDK"

manufacturer name

Definition at line 45 of file driver_mpu9250.c.

## ◆ MAX_CURRENT

#define MAX_CURRENT 3.7f

chip max current

Definition at line 48 of file driver_mpu9250.c.

## ◆ MIN

#define MIN | ( |  | a,
|  |  | b
| ) |  | (((a) < (b)) ? (a) : (b))

inner function definition

min function

Definition at line 223 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_CFG_15

#define MPU9250_DMP_CFG_15 2727

cfg 15 register

Definition at line 199 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_CFG_20

#define MPU9250_DMP_CFG_20 2224

cfg 20 register

Definition at line 202 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_CFG_27

#define MPU9250_DMP_CFG_27 2742

cfg 27 register

Definition at line 200 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_CFG_6

#define MPU9250_DMP_CFG_6 2753

cfg 6 register

Definition at line 184 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_CFG_8

#define MPU9250_DMP_CFG_8 2718

cfg 8 register

Definition at line 185 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_CFG_FIFO_ON_EVENT

#define MPU9250_DMP_CFG_FIFO_ON_EVENT 2690

fifo on event register

Definition at line 188 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_CFG_GYRO_RAW_DATA

#define MPU9250_DMP_CFG_GYRO_RAW_DATA 2722

cfg gyro raw data register

Definition at line 201 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_CFG_LP_QUAT

#define MPU9250_DMP_CFG_LP_QUAT 2712

lp quat register

Definition at line 187 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_CFG_MOTION_BIAS

#define MPU9250_DMP_CFG_MOTION_BIAS 1208

motion bias register

Definition at line 186 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_CFG_ORIENT_INT

#define MPU9250_DMP_CFG_ORIENT_INT 1853

cfg orient int register

Definition at line 203 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_0_104

#define MPU9250_DMP_D_0_104 104

104 register

Definition at line 179 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_0_22

#define MPU9250_DMP_D_0_22 (512 + 22)

22 register

Definition at line 178 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_1_218

#define MPU9250_DMP_D_1_218 (256 + 218)

218 register

Definition at line 177 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_1_36

#define MPU9250_DMP_D_1_36 (256 + 36)

36 register

Definition at line 169 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_1_40

#define MPU9250_DMP_D_1_40 (256 + 40)

40 register

Definition at line 170 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_1_44

#define MPU9250_DMP_D_1_44 (256 + 44)

44 register

Definition at line 171 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_1_72

#define MPU9250_DMP_D_1_72 (256 + 72)

72 register

Definition at line 172 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_1_79

#define MPU9250_DMP_D_1_79 (256 + 79)

79 register

Definition at line 173 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_1_88

#define MPU9250_DMP_D_1_88 (256 + 88)

88 register

Definition at line 174 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_1_90

#define MPU9250_DMP_D_1_90 (256 + 90)

90 register

Definition at line 175 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_1_92

#define MPU9250_DMP_D_1_92 (256 + 92)

92 register

Definition at line 176 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_ACCEL_BIAS

#define MPU9250_DMP_D_ACCEL_BIAS 660

accel bias register

Definition at line 196 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_EXT_GYRO_BIAS_X

#define MPU9250_DMP_D_EXT_GYRO_BIAS_X (61 * 16)

gyro bias x register

Definition at line 193 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_EXT_GYRO_BIAS_Y

#define MPU9250_DMP_D_EXT_GYRO_BIAS_Y (61 * 16 + 4)

gyro bias y register

Definition at line 194 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_EXT_GYRO_BIAS_Z

#define MPU9250_DMP_D_EXT_GYRO_BIAS_Z (61 * 16 + 8)

gyro bias z register

Definition at line 195 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_PEDSTD_STEPCTR

#define MPU9250_DMP_D_PEDSTD_STEPCTR (768 + 0x60)

step counter mem register

Definition at line 168 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_D_PEDSTD_TIMECTR

#define MPU9250_DMP_D_PEDSTD_TIMECTR 964

walk time mem register

Definition at line 167 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_FCFG_1

#define MPU9250_DMP_FCFG_1 1062

fcfg 1 register

Definition at line 189 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_FCFG_2

#define MPU9250_DMP_FCFG_2 1066

fcfg 2 register

Definition at line 190 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_FCFG_3

#define MPU9250_DMP_FCFG_3 1088

fcfg 3 register

Definition at line 191 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_FCFG_7

#define MPU9250_DMP_FCFG_7 1073

fcfg 7 register

Definition at line 192 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_FEATURE_SEND_ANY_GYRO

#define MPU9250_DMP_FEATURE_SEND_ANY_GYRO

Value:
(MPU9250_DMP_FEATURE_SEND_RAW_GYRO | \
MPU9250_DMP_FEATURE_SEND_CAL_GYRO)
MPU9250_DMP_FEATURE_SEND_RAW_GYRO
@ MPU9250_DMP_FEATURE_SEND_RAW_GYRO
Definition: driver_mpu9250.h:461

send any gyro register

Definition at line 198 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_GYRO_SF

#define MPU9250_DMP_GYRO_SF (46850825LL * 200 / MPU9250_DMP_SAMPLE_RATE)

gyro sf

Definition at line 166 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_INT_SRC_ORIENT

#define MPU9250_DMP_INT_SRC_ORIENT 0x08

int src orient

Definition at line 211 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_INT_SRC_TAP

#define MPU9250_DMP_INT_SRC_TAP 0x01

int src tap

Definition at line 210 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_QUAT_ERROR_THRESH

#define MPU9250_DMP_QUAT_ERROR_THRESH (1L << 24)

quat error thresh

Definition at line 204 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_QUAT_MAG_SQ_MAX

#define MPU9250_DMP_QUAT_MAG_SQ_MAX

Value:
(MPU9250_DMP_QUAT_MAG_SQ_NORMALIZED + \
MPU9250_DMP_QUAT_ERROR_THRESH)
MPU9250_DMP_QUAT_MAG_SQ_NORMALIZED
#define MPU9250_DMP_QUAT_MAG_SQ_NORMALIZED
Definition: driver_mpu9250.c:205

quat mag sq max

Definition at line 209 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_QUAT_MAG_SQ_MIN

#define MPU9250_DMP_QUAT_MAG_SQ_MIN

Value:
(MPU9250_DMP_QUAT_MAG_SQ_NORMALIZED - \
MPU9250_DMP_QUAT_ERROR_THRESH)

quat mag sq min

Definition at line 207 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_QUAT_MAG_SQ_NORMALIZED

#define MPU9250_DMP_QUAT_MAG_SQ_NORMALIZED (1L << 28)

quat mag sq normalized

Definition at line 205 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_SAMPLE_RATE

#define MPU9250_DMP_SAMPLE_RATE 200

mpu9250 dmp code definition

sample rate

Definition at line 165 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_SHAKE_REJECT_THRESH

#define MPU9250_DMP_SHAKE_REJECT_THRESH 200

200 ms

Definition at line 216 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_SHAKE_REJECT_TIME

#define MPU9250_DMP_SHAKE_REJECT_TIME 40

40 ms

Definition at line 217 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_SHAKE_REJECT_TIMEOUT

#define MPU9250_DMP_SHAKE_REJECT_TIMEOUT 10

10 ms

Definition at line 218 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_TAP_MIN_TAP_COUNT

#define MPU9250_DMP_TAP_MIN_TAP_COUNT 1

1

Definition at line 213 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_TAP_THRESH

#define MPU9250_DMP_TAP_THRESH 250

250 mg/ms

Definition at line 212 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_TAP_THX

#define MPU9250_DMP_TAP_THX 468

tap threshold x register

Definition at line 181 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_TAP_THY

#define MPU9250_DMP_TAP_THY 472

tap threshold y register

Definition at line 182 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_TAP_THZ

#define MPU9250_DMP_TAP_THZ 476

tap threshold z register

Definition at line 183 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_TAP_TIME

#define MPU9250_DMP_TAP_TIME 100

100 ms

Definition at line 214 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_TAP_TIME_MULTI

#define MPU9250_DMP_TAP_TIME_MULTI 200

200 ms

Definition at line 215 of file driver_mpu9250.c.

## ◆ MPU9250_DMP_TAPW_MIN

#define MPU9250_DMP_TAPW_MIN 478

tap time min register

Definition at line 180 of file driver_mpu9250.c.

## ◆ MPU9250_REG_ACCEL_CONFIG

#define MPU9250_REG_ACCEL_CONFIG 0x1C

accel configure register

Definition at line 76 of file driver_mpu9250.c.

## ◆ MPU9250_REG_ACCEL_CONFIG2

#define MPU9250_REG_ACCEL_CONFIG2 0x1D

accel configure 2 register

Definition at line 77 of file driver_mpu9250.c.

## ◆ MPU9250_REG_ACCEL_XOUT_H

#define MPU9250_REG_ACCEL_XOUT_H 0x3B

accel xout high register

Definition at line 110 of file driver_mpu9250.c.

## ◆ MPU9250_REG_ACCEL_XOUT_L

#define MPU9250_REG_ACCEL_XOUT_L 0x3C

accel xout low register

Definition at line 111 of file driver_mpu9250.c.

## ◆ MPU9250_REG_ACCEL_YOUT_H

#define MPU9250_REG_ACCEL_YOUT_H 0x3D

accel yout high register

Definition at line 112 of file driver_mpu9250.c.

## ◆ MPU9250_REG_ACCEL_YOUT_L

#define MPU9250_REG_ACCEL_YOUT_L 0x3E

accel yout low register

Definition at line 113 of file driver_mpu9250.c.

## ◆ MPU9250_REG_ACCEL_ZOUT_H

#define MPU9250_REG_ACCEL_ZOUT_H 0x3F

accel zout high register

Definition at line 114 of file driver_mpu9250.c.

## ◆ MPU9250_REG_ACCEL_ZOUT_L

#define MPU9250_REG_ACCEL_ZOUT_L 0x40

accel zout low register

Definition at line 115 of file driver_mpu9250.c.

## ◆ MPU9250_REG_BANK_SEL

#define MPU9250_REG_BANK_SEL 0x6D

bank sel register

Definition at line 129 of file driver_mpu9250.c.

## ◆ MPU9250_REG_CONFIG

#define MPU9250_REG_CONFIG 0x1A

configure register

Definition at line 74 of file driver_mpu9250.c.

## ◆ MPU9250_REG_EXT_SENS_DATA_00

#define MPU9250_REG_EXT_SENS_DATA_00 0x49

extern sensor data 00 register

Definition at line 106 of file driver_mpu9250.c.

## ◆ MPU9250_REG_FIFO_COUNTH

#define MPU9250_REG_FIFO_COUNTH 0x72

fifo count high threshold register

Definition at line 132 of file driver_mpu9250.c.

## ◆ MPU9250_REG_FIFO_COUNTL

#define MPU9250_REG_FIFO_COUNTL 0x73

fifo count low threshold register

Definition at line 133 of file driver_mpu9250.c.

## ◆ MPU9250_REG_FIFO_EN

#define MPU9250_REG_FIFO_EN 0x23

fifo enable register

Definition at line 81 of file driver_mpu9250.c.

## ◆ MPU9250_REG_GYRO_CONFIG

#define MPU9250_REG_GYRO_CONFIG 0x1B

gyro configure register

Definition at line 75 of file driver_mpu9250.c.

## ◆ MPU9250_REG_GYRO_XOUT_H

#define MPU9250_REG_GYRO_XOUT_H 0x43

gyro xout high register

Definition at line 118 of file driver_mpu9250.c.

## ◆ MPU9250_REG_GYRO_XOUT_L

#define MPU9250_REG_GYRO_XOUT_L 0x44

gyro xout low register

Definition at line 119 of file driver_mpu9250.c.

## ◆ MPU9250_REG_GYRO_YOUT_H

#define MPU9250_REG_GYRO_YOUT_H 0x45

gyro yout high register

Definition at line 120 of file driver_mpu9250.c.

## ◆ MPU9250_REG_GYRO_YOUT_L

#define MPU9250_REG_GYRO_YOUT_L 0x46

gyro yout low register

Definition at line 121 of file driver_mpu9250.c.

## ◆ MPU9250_REG_GYRO_ZOUT_H

#define MPU9250_REG_GYRO_ZOUT_H 0x47

gyro zout high register

Definition at line 122 of file driver_mpu9250.c.

## ◆ MPU9250_REG_GYRO_ZOUT_L

#define MPU9250_REG_GYRO_ZOUT_L 0x48

gyro zout low register

Definition at line 123 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_MST_CTRL

#define MPU9250_REG_I2C_MST_CTRL 0x24

i2c master ctrl register

Definition at line 82 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_MST_DELAY_CTRL

#define MPU9250_REG_I2C_MST_DELAY_CTRL 0x67

i2c master delay ctrl register

Definition at line 84 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_MST_STATUS

#define MPU9250_REG_I2C_MST_STATUS 0x36

i2c master status register

Definition at line 83 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV0_ADDR

#define MPU9250_REG_I2C_SLV0_ADDR 0x25

iic slave0 address register

Definition at line 85 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV0_CTRL

#define MPU9250_REG_I2C_SLV0_CTRL 0x27

iic slave0 ctrl register

Definition at line 87 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV0_DO

#define MPU9250_REG_I2C_SLV0_DO 0x63

iic slave0 do register

Definition at line 88 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV0_REG

#define MPU9250_REG_I2C_SLV0_REG 0x26

iic slave0 reg register

Definition at line 86 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV1_ADDR

#define MPU9250_REG_I2C_SLV1_ADDR 0x28

iic slave1 address register

Definition at line 89 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV1_CTRL

#define MPU9250_REG_I2C_SLV1_CTRL 0x2A

iic slave1 ctrl register

Definition at line 91 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV1_DO

#define MPU9250_REG_I2C_SLV1_DO 0x64

iic slave1 do register

Definition at line 92 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV1_REG

#define MPU9250_REG_I2C_SLV1_REG 0x29

iic slave1 reg register

Definition at line 90 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV2_ADDR

#define MPU9250_REG_I2C_SLV2_ADDR 0x2B

iic slave2 address register

Definition at line 93 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV2_CTRL

#define MPU9250_REG_I2C_SLV2_CTRL 0x2D

iic slave2 ctrl register

Definition at line 95 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV2_DO

#define MPU9250_REG_I2C_SLV2_DO 0x65

iic slave2 do register

Definition at line 96 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV2_REG

#define MPU9250_REG_I2C_SLV2_REG 0x2C

iic slave2 reg register

Definition at line 94 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV3_ADDR

#define MPU9250_REG_I2C_SLV3_ADDR 0x2E

iic slave3 address register

Definition at line 97 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV3_CTRL

#define MPU9250_REG_I2C_SLV3_CTRL 0x30

iic slave3 ctrl register

Definition at line 99 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV3_DO

#define MPU9250_REG_I2C_SLV3_DO 0x66

iic slave3 do register

Definition at line 100 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV3_REG

#define MPU9250_REG_I2C_SLV3_REG 0x2F

iic slave3 reg register

Definition at line 98 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV4_ADDR

#define MPU9250_REG_I2C_SLV4_ADDR 0x31

iic slave4 address register

Definition at line 101 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV4_CTRL

#define MPU9250_REG_I2C_SLV4_CTRL 0x34

iic slave4 ctrl register

Definition at line 103 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV4_DI

#define MPU9250_REG_I2C_SLV4_DI 0x35

iic slave4 di register

Definition at line 105 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV4_DO

#define MPU9250_REG_I2C_SLV4_DO 0x33

iic slave4 do register

Definition at line 104 of file driver_mpu9250.c.

## ◆ MPU9250_REG_I2C_SLV4_REG

#define MPU9250_REG_I2C_SLV4_REG 0x32

iic slave4 reg register

Definition at line 102 of file driver_mpu9250.c.

## ◆ MPU9250_REG_INT_ENABLE

#define MPU9250_REG_INT_ENABLE 0x38

interrupt enable register

Definition at line 108 of file driver_mpu9250.c.

## ◆ MPU9250_REG_INT_PIN_CFG

#define MPU9250_REG_INT_PIN_CFG 0x37

interrupt pin configure register

Definition at line 107 of file driver_mpu9250.c.

## ◆ MPU9250_REG_INT_STATUS

#define MPU9250_REG_INT_STATUS 0x3A

interrupt status register

Definition at line 109 of file driver_mpu9250.c.

## ◆ MPU9250_REG_LP_ACCEL_ODR

#define MPU9250_REG_LP_ACCEL_ODR 0x1E

low power accel odr register

Definition at line 78 of file driver_mpu9250.c.

## ◆ MPU9250_REG_MEM

#define MPU9250_REG_MEM 0x6F

memory register

Definition at line 130 of file driver_mpu9250.c.

## ◆ MPU9250_REG_MOT_DETECT_CTRL

#define MPU9250_REG_MOT_DETECT_CTRL 0x69

motion detect ctrl register

Definition at line 125 of file driver_mpu9250.c.

## ◆ MPU9250_REG_MOTION_DURATION

#define MPU9250_REG_MOTION_DURATION 0x20

motion duration register

Definition at line 80 of file driver_mpu9250.c.

## ◆ MPU9250_REG_PROGRAM_START

#define MPU9250_REG_PROGRAM_START 0x70

program start register

Definition at line 131 of file driver_mpu9250.c.

## ◆ MPU9250_REG_PWR_MGMT_1

#define MPU9250_REG_PWR_MGMT_1 0x6B

power management 1 register

Definition at line 127 of file driver_mpu9250.c.

## ◆ MPU9250_REG_PWR_MGMT_2

#define MPU9250_REG_PWR_MGMT_2 0x6C

power management 2 register

Definition at line 128 of file driver_mpu9250.c.

## ◆ MPU9250_REG_R_W

#define MPU9250_REG_R_W 0x74

fifo read write data register

Definition at line 134 of file driver_mpu9250.c.

## ◆ MPU9250_REG_SELF_TEST_X_ACCEL

#define MPU9250_REG_SELF_TEST_X_ACCEL 0x0D

accel self test x register

Definition at line 64 of file driver_mpu9250.c.

## ◆ MPU9250_REG_SELF_TEST_X_GYRO

#define MPU9250_REG_SELF_TEST_X_GYRO 0x00

chip register definition

gyro self test x register

Definition at line 61 of file driver_mpu9250.c.

## ◆ MPU9250_REG_SELF_TEST_Y_ACCEL

#define MPU9250_REG_SELF_TEST_Y_ACCEL 0x0E

accel self test y register

Definition at line 65 of file driver_mpu9250.c.

## ◆ MPU9250_REG_SELF_TEST_Y_GYRO

#define MPU9250_REG_SELF_TEST_Y_GYRO 0x01

gyro self test y register

Definition at line 62 of file driver_mpu9250.c.

## ◆ MPU9250_REG_SELF_TEST_Z_ACCEL

#define MPU9250_REG_SELF_TEST_Z_ACCEL 0x0F

accel self test z register

Definition at line 66 of file driver_mpu9250.c.

## ◆ MPU9250_REG_SELF_TEST_Z_GYRO

#define MPU9250_REG_SELF_TEST_Z_GYRO 0x02

gyro self test z register

Definition at line 63 of file driver_mpu9250.c.

## ◆ MPU9250_REG_SIGNAL_PATH_RESET

#define MPU9250_REG_SIGNAL_PATH_RESET 0x68

signal path reset register

Definition at line 124 of file driver_mpu9250.c.

## ◆ MPU9250_REG_SMPRT_DIV

#define MPU9250_REG_SMPRT_DIV 0x19

smprt div register

Definition at line 73 of file driver_mpu9250.c.

## ◆ MPU9250_REG_TEMP_OUT_H

#define MPU9250_REG_TEMP_OUT_H 0x41

temp high register

Definition at line 116 of file driver_mpu9250.c.

## ◆ MPU9250_REG_TEMP_OUT_L

#define MPU9250_REG_TEMP_OUT_L 0x42

temp low register

Definition at line 117 of file driver_mpu9250.c.

## ◆ MPU9250_REG_USER_CTRL

#define MPU9250_REG_USER_CTRL 0x6A

user ctrl register

Definition at line 126 of file driver_mpu9250.c.

## ◆ MPU9250_REG_WHO_AM_I

#define MPU9250_REG_WHO_AM_I 0x75

who am I register

Definition at line 135 of file driver_mpu9250.c.

## ◆ MPU9250_REG_WOM_THR

#define MPU9250_REG_WOM_THR 0x1F

wom threshold register

Definition at line 79 of file driver_mpu9250.c.

## ◆ MPU9250_REG_XA_OFFSET_H

#define MPU9250_REG_XA_OFFSET_H 0x77

accel offset x high register

Definition at line 136 of file driver_mpu9250.c.

## ◆ MPU9250_REG_XA_OFFSET_L

#define MPU9250_REG_XA_OFFSET_L 0x78

accel offset x low register

Definition at line 137 of file driver_mpu9250.c.

## ◆ MPU9250_REG_XG_OFFSET_H

#define MPU9250_REG_XG_OFFSET_H 0x13

gyro offset x high register

Definition at line 67 of file driver_mpu9250.c.

## ◆ MPU9250_REG_XG_OFFSET_L

#define MPU9250_REG_XG_OFFSET_L 0x14

gyro offset x low register

Definition at line 68 of file driver_mpu9250.c.

## ◆ MPU9250_REG_YA_OFFSET_H

#define MPU9250_REG_YA_OFFSET_H 0x7A

accel offset y high register

Definition at line 138 of file driver_mpu9250.c.

## ◆ MPU9250_REG_YA_OFFSET_L

#define MPU9250_REG_YA_OFFSET_L 0x7B

accel offset y low register

Definition at line 139 of file driver_mpu9250.c.

## ◆ MPU9250_REG_YG_OFFSET_H

#define MPU9250_REG_YG_OFFSET_H 0x15

gyro offset y high register

Definition at line 69 of file driver_mpu9250.c.

## ◆ MPU9250_REG_YG_OFFSET_L

#define MPU9250_REG_YG_OFFSET_L 0x16

gyro offset y low register

Definition at line 70 of file driver_mpu9250.c.

## ◆ MPU9250_REG_ZA_OFFSET_H

#define MPU9250_REG_ZA_OFFSET_H 0x7D

accel offset z high register

Definition at line 140 of file driver_mpu9250.c.

## ◆ MPU9250_REG_ZA_OFFSET_L

#define MPU9250_REG_ZA_OFFSET_L 0x7E

accel offset z low register

Definition at line 141 of file driver_mpu9250.c.

## ◆ MPU9250_REG_ZG_OFFSET_H

#define MPU9250_REG_ZG_OFFSET_H 0x17

gyro offset z high register

Definition at line 71 of file driver_mpu9250.c.

## ◆ MPU9250_REG_ZG_OFFSET_L

#define MPU9250_REG_ZG_OFFSET_L 0x18

gyro offset z low register

Definition at line 72 of file driver_mpu9250.c.

## ◆ SUPPLY_VOLTAGE_MAX

#define SUPPLY_VOLTAGE_MAX 3.6f

chip max supply voltage

Definition at line 47 of file driver_mpu9250.c.

## ◆ SUPPLY_VOLTAGE_MIN

#define SUPPLY_VOLTAGE_MIN 2.4f

chip min supply voltage

Definition at line 46 of file driver_mpu9250.c.

## ◆ TEMPERATURE_MAX

#define TEMPERATURE_MAX 85.0f

chip max operating temperature

Definition at line 50 of file driver_mpu9250.c.

## ◆ TEMPERATURE_MIN

#define TEMPERATURE_MIN -40.0f

chip min operating temperature

Definition at line 49 of file driver_mpu9250.c.