40 #define MPU9250_BUFFER_EXT_LEN 16
89 #endif // MPU9250_I2C_H
Register and address definitions for AK8963 magnetometer.
union Mpu9250_I2c::@46 data_rates
struct i2c_transaction i2c_trans
MPU-60X0 driver common interface (I2C and SPI).
struct Mpu9250Config config
Mpu9250I2cSlaveInitStatus
uint8_t data_ext[MPU9250_BUFFER_EXT_LEN]
Default Ak8963 structure.
union Mpu9250_I2c::@45 data_accel
struct Ak8963 akm
"internal" magnetometer
struct i2c_periph * i2c_p
peripheral used for communcation
void mpu9250_i2c_event(struct Mpu9250_I2c *mpu)
enum Mpu9250I2cSlaveInitStatus slave_init_status
I2C transaction structure.
volatile bool_t data_available
data ready flag
void mpu9250_i2c_init(struct Mpu9250_I2c *mpu, struct i2c_periph *i2c_p, uint8_t addr)
I2C peripheral structure.
bool_t initialized
config done flag
static void mpu9250_i2c_periodic(struct Mpu9250_I2c *mpu)
convenience function: read or start configuration if not already initialized
void mpu9250_i2c_read(struct Mpu9250_I2c *mpu)
#define MPU9250_BUFFER_EXT_LEN
void mpu9250_i2c_start_configure(struct Mpu9250_I2c *mpu)
struct i2c_periph * i2c_p
Paparazzi fixed point algebra.
Architecture independent I2C (Inter-Integrated Circuit Bus) API.