Paparazzi UAS
v5.14.0_stable-0-g3f680d1
Paparazzi is a free software Unmanned Aircraft System.
|
Driver for the Bebop (2) magnetometer, accelerometer and gyroscope. More...
Go to the source code of this file.
Macros | |
#define | BEBOP_MAG_I2C_DEV i2c1 |
#define | BEBOP_MPU_I2C_DEV i2c2 |
Functions | |
void | imu_bebop_init (void) |
Navstik IMU initializtion of the MPU-60x0 and HMC58xx. More... | |
void | imu_bebop_periodic (void) |
Handle all the periodic tasks of the Navstik IMU components. More... | |
void | imu_bebop_event (void) |
Handle all the events of the Navstik IMU components. More... | |
Variables | |
struct OrientationReps | imu_to_mag_bebop |
IMU to magneto rotation. More... | |
struct ImuBebop | imu_bebop |
Basic Navstik IMU data. More... | |
Driver for the Bebop (2) magnetometer, accelerometer and gyroscope.
Definition in file imu_bebop.c.
#define BEBOP_MAG_I2C_DEV i2c1 |
Definition at line 34 of file imu_bebop.c.
Referenced by imu_bebop_init().
#define BEBOP_MPU_I2C_DEV i2c2 |
Definition at line 39 of file imu_bebop.c.
Referenced by imu_bebop_init().
void imu_bebop_event | ( | void | ) |
Handle all the events of the Navstik IMU components.
When there is data available convert it to the correct axis and save it in the imu structure.
Definition at line 112 of file imu_bebop.c.
References Imu::accel, Imu::accel_unscaled, ImuBebop::ak, ak8963_event(), Ak8963::data, Mpu60x0_I2c::data_accel, Mpu60x0_I2c::data_available, Ak8963::data_available, Mpu60x0_I2c::data_rates, get_sys_time_usec(), Imu::gyro, Imu::gyro_unscaled, imu, imu_bebop, IMU_BOARD_ID, imu_scale_accel(), imu_scale_gyro(), imu_scale_mag(), imu_to_mag_bebop, int32_rmat_vmult(), Imu::mag, Imu::mag_unscaled, ImuBebop::mpu, mpu60x0_i2c_event(), orientationGetRMat_i(), RATES_ASSIGN, and VECT3_ASSIGN.
void imu_bebop_init | ( | void | ) |
Navstik IMU initializtion of the MPU-60x0 and HMC58xx.
Definition at line 74 of file imu_bebop.c.
References Mpu60x0Config::accel_range, ImuBebop::ak, AK8963_ADDR, ak8963_init(), BEBOP_ACCEL_RANGE, BEBOP_GYRO_RANGE, BEBOP_MAG_I2C_DEV, BEBOP_MPU_I2C_DEV, Mpu60x0_I2c::config, Mpu60x0Config::dlpf_cfg, Mpu60x0Config::gyro_range, ImuBebop::mpu, MPU60X0_ADDR, mpu60x0_i2c_init(), orientationSetEulers_f(), and Mpu60x0Config::smplrt_div.
void imu_bebop_periodic | ( | void | ) |
Handle all the periodic tasks of the Navstik IMU components.
Read the MPU60x0 every periodic call and the HMC58XX every 10th call.
Definition at line 99 of file imu_bebop.c.
References ImuBebop::ak, ak8963_periodic(), imu_bebop, ImuBebop::mpu, and mpu60x0_i2c_periodic().
struct ImuBebop imu_bebop |
Basic Navstik IMU data.
Definition at line 69 of file imu_bebop.c.
Referenced by imu_bebop_event(), imu_bebop_periodic(), and imu_temp_ctrl_periodic().
struct OrientationReps imu_to_mag_bebop |
IMU to magneto rotation.
Definition at line 66 of file imu_bebop.c.
Referenced by imu_bebop_event().