Paparazzi UAS
v5.10_stable-5-g83a0da5-dirty
Paparazzi is a free software Unmanned Aircraft System.
|
Driver for the Navstik magnetometer, accelerometer and gyroscope. More...
Go to the source code of this file.
Macros | |
#define | NAVSTIK_MAG_I2C_DEV i2c3 |
#define | NAVSTIK_MPU_I2C_DEV i2c1 |
#define | NAVSTIK_GYRO_RANGE MPU60X0_GYRO_RANGE_1000 |
#define | NAVSTIK_ACCEL_RANGE MPU60X0_ACCEL_RANGE_8G |
Functions | |
void | imu_navstik_init (void) |
Navstik IMU initializtion of the MPU-60x0 and HMC58xx. More... | |
void | imu_navstik_periodic (void) |
Handle all the periodic tasks of the Navstik IMU components. More... | |
void | imu_navstik_event (void) |
Handle all the events of the Navstik IMU components. More... | |
Variables | |
struct ImuNavstik | imu_navstik |
Basic Navstik IMU data. More... | |
Driver for the Navstik magnetometer, accelerometer and gyroscope.
Definition in file imu_navstik.c.
#define NAVSTIK_ACCEL_RANGE MPU60X0_ACCEL_RANGE_8G |
Definition at line 69 of file imu_navstik.c.
Referenced by imu_navstik_init().
#define NAVSTIK_GYRO_RANGE MPU60X0_GYRO_RANGE_1000 |
Definition at line 64 of file imu_navstik.c.
Referenced by imu_navstik_init().
#define NAVSTIK_MAG_I2C_DEV i2c3 |
Definition at line 34 of file imu_navstik.c.
Referenced by imu_navstik_init().
#define NAVSTIK_MPU_I2C_DEV i2c1 |
Definition at line 39 of file imu_navstik.c.
Referenced by imu_navstik_init().
void imu_navstik_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 109 of file imu_navstik.c.
References Imu::accel, Imu::accel_unscaled, Hmc58xx::data, Mpu60x0_I2c::data_accel, Mpu60x0_I2c::data_available, Hmc58xx::data_available, Mpu60x0_I2c::data_rates, get_sys_time_usec(), Imu::gyro, Imu::gyro_unscaled, ImuNavstik::hmc, hmc58xx_event(), imu, IMU_BOARD_ID, imu_navstik, imu_scale_accel(), imu_scale_gyro(), imu_scale_mag(), Imu::mag, Imu::mag_unscaled, ImuNavstik::mpu, mpu60x0_i2c_event(), RATES_COPY, VECT3_COPY, Int32Vect3::x, Int32Vect3::y, and Int32Vect3::z.
void imu_navstik_init | ( | void | ) |
Navstik IMU initializtion of the MPU-60x0 and HMC58xx.
Definition at line 79 of file imu_navstik.c.
References Mpu60x0Config::accel_range, Mpu60x0_I2c::config, Mpu60x0Config::dlpf_cfg, Mpu60x0Config::gyro_range, ImuNavstik::hmc, HMC58XX_ADDR, hmc58xx_init(), ImuNavstik::mpu, MPU60X0_ADDR_ALT, mpu60x0_i2c_init(), NAVSTIK_ACCEL_RANGE, NAVSTIK_GYRO_RANGE, NAVSTIK_MAG_I2C_DEV, NAVSTIK_MPU_I2C_DEV, and Mpu60x0Config::smplrt_div.
void imu_navstik_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 96 of file imu_navstik.c.
References ImuNavstik::hmc, hmc58xx_periodic(), imu_navstik, ImuNavstik::mpu, and mpu60x0_i2c_periodic().
struct ImuNavstik imu_navstik |
Basic Navstik IMU data.
Definition at line 74 of file imu_navstik.c.
Referenced by imu_navstik_event(), and imu_navstik_periodic().