Paparazzi UAS  v5.8.2_stable-0-g6260b7c
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
imu_gl1.c File Reference

Driver for I2C IMU using L3G4200, ADXL345, HMC5883 and BMP085. More...

#include "subsystems/imu.h"
#include "subsystems/abi.h"
#include "mcu_periph/i2c.h"
+ Include dependency graph for imu_gl1.c:

Go to the source code of this file.

Macros

#define GL1_ACCEL_RATE   ADXL345_RATE_50HZ
 adxl345 accelerometer output rate, lowpass is set to half of rate More...
 
#define GL1_GYRO_LOWPASS   L3G4200_DLPF_1
 gyro internal lowpass frequency More...
 
#define GL1_GYRO_SMPLRT   L3G4200_DR_100Hz
 gyro sample rate divider More...
 
#define L3G4200_SCALE   L3G4200_SCALE_2000
 

Functions

void imu_impl_init (void)
 must be defined by underlying hardware More...
 
void imu_periodic (void)
 optional. More...
 
void imu_gl1_i2c_event (void)
 

Variables

struct ImuGL1I2c imu_gl1
 

Detailed Description

Driver for I2C IMU using L3G4200, ADXL345, HMC5883 and BMP085.

Definition in file imu_gl1.c.

Macro Definition Documentation

#define GL1_ACCEL_RATE   ADXL345_RATE_50HZ

adxl345 accelerometer output rate, lowpass is set to half of rate

Definition at line 38 of file imu_gl1.c.

Referenced by imu_impl_init().

#define GL1_GYRO_LOWPASS   L3G4200_DLPF_1

gyro internal lowpass frequency

Definition at line 50 of file imu_gl1.c.

Referenced by imu_impl_init().

#define GL1_GYRO_SMPLRT   L3G4200_DR_100Hz

gyro sample rate divider

Definition at line 62 of file imu_gl1.c.

Referenced by imu_impl_init().

#define L3G4200_SCALE   L3G4200_SCALE_2000

Definition at line 74 of file imu_gl1.c.

Referenced by imu_impl_init().

Function Documentation

void imu_impl_init ( void  )
void imu_periodic ( void  )

optional.

If not provided by implementation, empty function is used

optional.

Read the MPU60x0 every periodic call and the HMC58XX every 10th call.

Definition at line 107 of file imu_gl1.c.

References ImuGL1I2c::acc_adxl, adxl345_i2c_periodic(), ImuGL1I2c::gyro_l3g, hmc58xx_periodic(), imu_gl1, l3g4200_periodic(), and ImuGL1I2c::mag_hmc.

+ Here is the call graph for this function:

Variable Documentation

struct ImuGL1I2c imu_gl1

Definition at line 78 of file imu_gl1.c.

Referenced by imu_gl1_i2c_event(), and imu_periodic().