Paparazzi UAS  v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
bmi088_i2c.c File Reference

Driver for the BMI088 using I2C. More...

+ Include dependency graph for bmi088_i2c.c:

Go to the source code of this file.

Macros

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

Functions

void bmi088_i2c_init (struct Bmi088_I2c *bmi, struct i2c_periph *i2c_p, uint8_t gyro_addr, uint8_t accel_addr)
 
static void bmi088_i2c_write_to_reg (void *bmi, uint8_t _reg, uint8_t _val, uint8_t _type)
 
void bmi088_i2c_start_configure (struct Bmi088_I2c *bmi)
 
void bmi088_i2c_read (struct Bmi088_I2c *bmi)
 
void bmi088_i2c_event (struct Bmi088_I2c *bmi)
 

Detailed Description

Driver for the BMI088 using I2C.

Definition in file bmi088_i2c.c.

Macro Definition Documentation

◆ Int16FromBuf

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

Definition at line 91 of file bmi088_i2c.c.

Function Documentation

◆ bmi088_i2c_event()

◆ bmi088_i2c_init()

void bmi088_i2c_init ( struct Bmi088_I2c bmi,
struct i2c_periph i2c_p,
uint8_t  gyro_addr,
uint8_t  accel_addr 
)

◆ bmi088_i2c_read()

void bmi088_i2c_read ( struct Bmi088_I2c bmi)

◆ bmi088_i2c_start_configure()

void bmi088_i2c_start_configure ( struct Bmi088_I2c bmi)

Definition at line 67 of file bmi088_i2c.c.

References Bmi088_I2c::accel_trans, BMI088_CONF_UNINIT, bmi088_i2c_write_to_reg(), bmi088_send_config(), Bmi088_I2c::config, I2CTransDone, I2CTransSuccess, Bmi088Config::init_status, and i2c_transaction::status.

Referenced by bmi088_i2c_periodic().

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

◆ bmi088_i2c_write_to_reg()

static void bmi088_i2c_write_to_reg ( void *  bmi,
uint8_t  _reg,
uint8_t  _val,
uint8_t  _type 
)
static

Definition at line 52 of file bmi088_i2c.c.

References Bmi088_I2c::accel_trans, BMI088_CONFIG_ACCEL, BMI088_CONFIG_GYRO, i2c_transaction::buf, Bmi088_I2c::gyro_trans, Bmi088_I2c::i2c_p, i2c_transmit(), and i2c_transaction::slave_addr.

Referenced by bmi088_i2c_event(), and bmi088_i2c_start_configure().

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