LSM6DSL 3D accelerometer/gyroscope

Device driver for the LSM6DSL 3D accelerometer/gyroscope. More...

Detailed Description

Files

file  lsm6dsl.h
 Device driver interface for the LSM6DSL 3D accelerometer/gyroscope.
 
file  lsm6dsl_internal.h
 Internal configuration for LSM6DSL devices.
 

Data Structures

struct  lsm6dsl_params_t
 LSM6DSL driver parameters. More...
 
struct  lsm6dsl_t
 LSM6DSL device descriptor. More...
 
struct  lsm6dsl_3d_data_t
 3D output data More...
 

Enumerations

enum  {
  LSM6DSL_DATA_RATE_POWER_DOWN = 0x0, LSM6DSL_DATA_RATE_1_6HZ = 0xB, LSM6DSL_DATA_RATE_12_5HZ = 0x1, LSM6DSL_DATA_RATE_26HZ = 0x2,
  LSM6DSL_DATA_RATE_52HZ = 0x3, LSM6DSL_DATA_RATE_104HZ = 0x4, LSM6DSL_DATA_RATE_208HZ = 0x5, LSM6DSL_DATA_RATE_416HZ = 0x6,
  LSM6DSL_DATA_RATE_833HZ = 0x7, LSM6DSL_DATA_RATE_1_66KHZ = 0x8, LSM6DSL_DATA_RATE_3_33KHZ = 0x9, LSM6DSL_DATA_RATE_6_66KHZ = 0xa
}
 Data rate.
 
enum  {
  LSM6DSL_DECIMATION_NOT_IN_FIFO = 0, LSM6DSL_DECIMATION_NO = 1, LSM6DSL_DECIMATION_2 = 2, LSM6DSL_DECIMATION_3 = 3,
  LSM6DSL_DECIMATION_4 = 4, LSM6DSL_DECIMATION_8 = 5, LSM6DSL_DECIMATION_16 = 6, LSM6DSL_DECIMATION_32 = 7
}
 Decimation.
 
enum  { LSM6DSL_ACC_FS_2G = 0, LSM6DSL_ACC_FS_4G = 2, LSM6DSL_ACC_FS_8G = 3, LSM6DSL_ACC_FS_16G = 1 }
 Accelerometer full scale.
 
enum  { LSM6DSL_GYRO_FS_245DPS = 0, LSM6DSL_GYRO_FS_500DPS = 1, LSM6DSL_GYRO_FS_1000DPS = 2, LSM6DSL_GYRO_FS_2000DPS = 3 }
 Gyroscope full scale.
 

Functions

int lsm6dsl_init (lsm6dsl_t *dev, const lsm6dsl_params_t *params)
 Initialize a LSM6DSL device. More...
 
int lsm6dsl_read_acc (const lsm6dsl_t *dev, lsm6dsl_3d_data_t *data)
 Read accelerometer data. More...
 
int lsm6dsl_read_gyro (const lsm6dsl_t *dev, lsm6dsl_3d_data_t *data)
 Read gyroscope data. More...
 
int lsm6dsl_read_temp (const lsm6dsl_t *dev, int16_t *data)
 Read temperature data. More...
 

Function Documentation

◆ lsm6dsl_init()

int lsm6dsl_init ( lsm6dsl_t dev,
const lsm6dsl_params_t params 
)
Parameters
[in]devdevice to initialize
[in]paramsdriver parameters
Returns
0 on success
< 0 on error

◆ lsm6dsl_read_acc()

int lsm6dsl_read_acc ( const lsm6dsl_t dev,
lsm6dsl_3d_data_t data 
)
Parameters
[in]devdevice to read
[out]dataaccelerometer values
Returns
0 on success
< 0 on error

◆ lsm6dsl_read_gyro()

int lsm6dsl_read_gyro ( const lsm6dsl_t dev,
lsm6dsl_3d_data_t data 
)
Parameters
[in]devdevice to read
[out]datagyroscope values
Returns
0 on success
< 0 on error

◆ lsm6dsl_read_temp()

int lsm6dsl_read_temp ( const lsm6dsl_t dev,
int16_t *  data 
)
Parameters
[in]devdevice to read
[out]datatemperature value
Returns
0 on success
< 0 on error