39 #ifndef IMU_MPU9250_READ_MAG
40 #define IMU_MPU9250_READ_MAG TRUE
44 #define MPU9250_BUFFER_EXT_LEN 16
74 #ifdef IMU_MPU9250_READ_MAG
Register and address definitions for AK8963 magnetometer.
struct i2c_periph * i2c_p
peripheral used for communcation
Default Ak8963 structure.
I2C transaction structure.
Architecture independent I2C (Inter-Integrated Circuit Bus) API.
MPU-60X0 driver common interface (I2C and SPI).
bool initialized
config done flag
struct Mpu9250Config config
void mpu9250_i2c_event(struct Mpu9250_I2c *mpu)
union Mpu9250_I2c::@344 data_rates
uint8_t data_ext[MPU9250_BUFFER_EXT_LEN]
void mpu9250_i2c_read(struct Mpu9250_I2c *mpu)
struct i2c_transaction i2c_trans
struct Ak8963 akm
"internal" magnetometer
union Mpu9250_I2c::@343 data_accel
#define MPU9250_BUFFER_EXT_LEN
static void mpu9250_i2c_periodic(struct Mpu9250_I2c *mpu)
convenience function: read or start configuration if not already initialized
enum Mpu9250I2cSlaveInitStatus slave_init_status
void mpu9250_i2c_init(struct Mpu9250_I2c *mpu, struct i2c_periph *i2c_p, uint8_t addr)
void mpu9250_i2c_start_configure(struct Mpu9250_I2c *mpu)
struct i2c_periph * i2c_p
Mpu9250I2cSlaveInitStatus
@ MPU9250_I2C_CONF_I2C_SMPLRT
@ MPU9250_I2C_CONF_I2C_BYPASS_EN
@ MPU9250_I2C_CONF_UNINIT
@ MPU9250_I2C_CONF_I2C_MST_DELAY
@ MPU9250_I2C_CONF_I2C_MST_EN
@ MPU9250_I2C_CONF_I2C_MST_DIS
@ MPU9250_I2C_CONF_I2C_BYPASS_DIS
@ MPU9250_I2C_CONF_I2C_MST_CLK
@ MPU9250_I2C_CONF_SLAVES_CONFIGURE
volatile bool data_available
data ready flag
Paparazzi fixed point algebra.
short int16_t
Typedef defining 16 bit short type.
unsigned char uint8_t
Typedef defining 8 bit unsigned char type.