Paparazzi UAS
v5.10_stable-5-g83a0da5-dirty
Paparazzi is a free software Unmanned Aircraft System.
|
Driver for the IMU on the Umarim board. More...
#include <math.h>
#include "imu_umarim.h"
#include "mcu_periph/i2c.h"
#include "generated/airframe.h"
#include "subsystems/abi.h"
#include "mcu_periph/uart.h"
#include "pprzlink/messages.h"
#include "subsystems/datalink/downlink.h"
Go to the source code of this file.
Macros | |
#define | UMARIM_ACCEL_RANGE ADXL345_RANGE_16G |
#define | UMARIM_ACCEL_RATE ADXL345_RATE_50HZ |
#define | UMARIM_GYRO_LOWPASS ITG3200_DLPF_20HZ |
#define | UMARIM_GYRO_SMPLRT_DIV 19 |
Functions | |
void | imu_umarim_init (void) |
void | imu_umarim_periodic (void) |
void | imu_umarim_downlink_raw (void) |
void | imu_umarim_event (void) |
Variables | |
struct ImuUmarim | imu_umarim |
Driver for the IMU on the Umarim board.
Definition in file imu_umarim.c.
#define UMARIM_ACCEL_RANGE ADXL345_RANGE_16G |
Definition at line 45 of file imu_umarim.c.
Referenced by imu_umarim_init().
#define UMARIM_ACCEL_RATE ADXL345_RATE_50HZ |
Definition at line 50 of file imu_umarim.c.
Referenced by imu_umarim_init().
#define UMARIM_GYRO_LOWPASS ITG3200_DLPF_20HZ |
Definition at line 57 of file imu_umarim.c.
Referenced by imu_umarim_init().
#define UMARIM_GYRO_SMPLRT_DIV 19 |
Definition at line 58 of file imu_umarim.c.
Referenced by imu_umarim_init().
void imu_umarim_downlink_raw | ( | void | ) |
Definition at line 94 of file imu_umarim.c.
References Imu::accel_unscaled, DefaultChannel, DefaultDevice, Imu::gyro_unscaled, imu, Int32Rates::p, Int32Rates::q, Int32Rates::r, Int32Vect3::x, Int32Vect3::y, and Int32Vect3::z.
void imu_umarim_event | ( | void | ) |
Definition at line 103 of file imu_umarim.c.
References Imu::accel, Imu::accel_unscaled, ImuUmarim::adxl, adxl345_i2c_event(), Adxl345_I2c::data, Itg3200::data, Adxl345_I2c::data_available, Itg3200::data_available, get_sys_time_usec(), Imu::gyro, Imu::gyro_unscaled, imu, IMU_BOARD_ID, imu_scale_accel(), imu_scale_gyro(), imu_umarim, ImuUmarim::itg, itg3200_event(), RATES_COPY, and VECT3_ASSIGN.
void imu_umarim_init | ( | void | ) |
Definition at line 66 of file imu_umarim.c.
References ImuUmarim::adxl, ADXL345_ADDR_ALT, adxl345_i2c_init(), Adxl345_I2c::config, Itg3200::config, Itg3200Config::dlpf_cfg, ImuUmarim::itg, ITG3200_ADDR_ALT, itg3200_init(), Adxl345Config::range, Adxl345Config::rate, Itg3200Config::smplrt_div, UMARIM_ACCEL_RANGE, UMARIM_ACCEL_RATE, UMARIM_GYRO_LOWPASS, and UMARIM_GYRO_SMPLRT_DIV.
void imu_umarim_periodic | ( | void | ) |
Definition at line 83 of file imu_umarim.c.
References ImuUmarim::adxl, adxl345_i2c_periodic(), imu_umarim, ImuUmarim::itg, and itg3200_periodic().
struct ImuUmarim imu_umarim |
Definition at line 64 of file imu_umarim.c.
Referenced by imu_umarim_event(), and imu_umarim_periodic().