|
|
|
@ -322,9 +322,10 @@ bool AP_InertialSensor_MPU6000::_init()
@@ -322,9 +322,10 @@ bool AP_InertialSensor_MPU6000::_init()
|
|
|
|
|
|
|
|
|
|
void AP_InertialSensor_MPU6000::_fifo_reset() |
|
|
|
|
{ |
|
|
|
|
_register_write(MPUREG_USER_CTRL, 0); |
|
|
|
|
_register_write(MPUREG_USER_CTRL, BIT_USER_CTRL_FIFO_RESET); |
|
|
|
|
_register_write(MPUREG_USER_CTRL, BIT_USER_CTRL_FIFO_EN); |
|
|
|
|
uint8_t user_ctrl = _master_i2c_enable?BIT_USER_CTRL_I2C_MST_EN:0; |
|
|
|
|
_register_write(MPUREG_USER_CTRL, user_ctrl); |
|
|
|
|
_register_write(MPUREG_USER_CTRL, user_ctrl | BIT_USER_CTRL_FIFO_RESET); |
|
|
|
|
_register_write(MPUREG_USER_CTRL, user_ctrl | BIT_USER_CTRL_FIFO_EN); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void AP_InertialSensor_MPU6000::_fifo_enable() |
|
|
|
@ -907,6 +908,8 @@ void AP_MPU6000_AuxiliaryBus::_configure_slaves()
@@ -907,6 +908,8 @@ void AP_MPU6000_AuxiliaryBus::_configure_slaves()
|
|
|
|
|
uint8_t user_ctrl = backend._register_read(MPUREG_USER_CTRL); |
|
|
|
|
backend._register_write(MPUREG_USER_CTRL, user_ctrl | BIT_USER_CTRL_I2C_MST_EN); |
|
|
|
|
|
|
|
|
|
backend._master_i2c_enable = true; |
|
|
|
|
|
|
|
|
|
/* stop condition between reads; clock at 400kHz */ |
|
|
|
|
backend._register_write(MPUREG_I2C_MST_CTRL, |
|
|
|
|
BIT_I2C_MST_P_NSR | BIT_I2C_MST_CLK_400KHZ); |
|
|
|
|