Paparazzi UAS  v5.18.0_stable
Paparazzi is a free software Unmanned Aircraft System.
mpu9250_i2c.c File Reference
+ Include dependency graph for mpu9250_i2c.c:

Go to the source code of this file.

Macros

#define Int16FromBuf(_buf, _idx)   ((int16_t)((_buf[_idx]<<8) | _buf[_idx+1]))
 

Functions

bool imu_mpu9250_configure_mag_slave (Mpu9250ConfigSet mpu_set, void *mpu)
 callback function to configure ak8963 mag More...
 
void mpu9250_i2c_init (struct Mpu9250_I2c *mpu, struct i2c_periph *i2c_p, uint8_t addr)
 
static void mpu9250_i2c_write_to_reg (void *mpu, uint8_t _reg, uint8_t _val)
 
void mpu9250_i2c_start_configure (struct Mpu9250_I2c *mpu)
 
void mpu9250_i2c_read (struct Mpu9250_I2c *mpu)
 
void mpu9250_i2c_event (struct Mpu9250_I2c *mpu)
 
bool mpu9250_configure_i2c_slaves (Mpu9250ConfigSet mpu_set, void *mpu)
 configure the registered I2C slaves More...
 

Detailed Description

Driver for the MPU-9250 using I2C.

Definition in file mpu9250_i2c.c.

Macro Definition Documentation

◆ Int16FromBuf

#define Int16FromBuf (   _buf,
  _idx 
)    ((int16_t)((_buf[_idx]<<8) | _buf[_idx+1]))

Definition at line 104 of file mpu9250_i2c.c.

Function Documentation

◆ imu_mpu9250_configure_mag_slave()

bool imu_mpu9250_configure_mag_slave ( Mpu9250ConfigSet  mpu_set,
void *  mpu 
)

callback function to configure ak8963 mag

function to configure akm8963 mag

Returns
TRUE if mag configuration finished

Definition at line 162 of file mpu9250_i2c.c.

References ak8963_configure(), Mpu9250_I2c::akm, and Ak8963::initialized.

Referenced by mpu9250_i2c_init().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ mpu9250_configure_i2c_slaves()

◆ mpu9250_i2c_event()

◆ mpu9250_i2c_init()

◆ mpu9250_i2c_read()

void mpu9250_i2c_read ( struct Mpu9250_I2c mpu)

◆ mpu9250_i2c_start_configure()

void mpu9250_i2c_start_configure ( struct Mpu9250_I2c mpu)

Definition at line 77 of file mpu9250_i2c.c.

References Mpu9250_I2c::config, Mpu9250_I2c::i2c_trans, I2CTransDone, I2CTransSuccess, Mpu9250Config::init_status, MPU9250_CONF_UNINIT, mpu9250_i2c_write_to_reg(), mpu9250_send_config(), and i2c_transaction::status.

Referenced by mpu9250_i2c_periodic().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ mpu9250_i2c_write_to_reg()

static void mpu9250_i2c_write_to_reg ( void *  mpu,
uint8_t  _reg,
uint8_t  _val 
)
static

Definition at line 68 of file mpu9250_i2c.c.

References i2c_transaction::buf, Mpu9250_I2c::i2c_p, Mpu9250_I2c::i2c_trans, i2c_transmit(), and i2c_transaction::slave_addr.

Referenced by mpu9250_i2c_event(), and mpu9250_i2c_start_configure().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: