Library for read the sensor LSM303D by I2C and configure the sensor for measure with frecuency 100Hz and range +-2g

Dependents:   1-K64F_with_5_acel

Fork of LSM303D by brian claus

Committer:
vinajarr
Date:
Thu Dec 01 08:14:40 2016 +0000
Revision:
1:27d47f5de82c
Parent:
0:5b930e09bd6e
Child:
2:fcd607760ee8
change configuration for measure acelerometer data with frecuency of 100 Hz and range +-2g. add fuction for only read accelerometer data

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bclaus 0:5b930e09bd6e 1
bclaus 0:5b930e09bd6e 2 #ifndef __LSM303D_H
bclaus 0:5b930e09bd6e 3 #define __LSM303D_H
bclaus 0:5b930e09bd6e 4 #include "mbed.h"
bclaus 0:5b930e09bd6e 5
bclaus 0:5b930e09bd6e 6
bclaus 0:5b930e09bd6e 7
bclaus 0:5b930e09bd6e 8 class LSM303D {
bclaus 0:5b930e09bd6e 9 public:
bclaus 0:5b930e09bd6e 10 /** Create a new interface for an LSM303D
bclaus 0:5b930e09bd6e 11 *
bclaus 0:5b930e09bd6e 12 * @param sda is the pin for the I2C SDA line
bclaus 0:5b930e09bd6e 13 * @param scl is the pin for the I2C SCL line
bclaus 0:5b930e09bd6e 14 */
bclaus 0:5b930e09bd6e 15 LSM303D(PinName sda, PinName scl);
bclaus 0:5b930e09bd6e 16
bclaus 0:5b930e09bd6e 17
bclaus 0:5b930e09bd6e 18 /** read the raw accelerometer and compass values
bclaus 0:5b930e09bd6e 19 *
bclaus 0:5b930e09bd6e 20 * @param ax,ay,az is the accelerometer 3d vector, written by the function
bclaus 0:5b930e09bd6e 21 * @param mx,my,mz is the magnetometer 3d vector, written by the function
bclaus 0:5b930e09bd6e 22 */
bclaus 0:5b930e09bd6e 23 bool read(float *ax, float *ay, float *az, float *mx, float *my, float *mz);
vinajarr 1:27d47f5de82c 24 bool readA(double *ax, double *ay, double *az);
bclaus 0:5b930e09bd6e 25
bclaus 0:5b930e09bd6e 26 private:
bclaus 0:5b930e09bd6e 27 I2C _LSM303;
bclaus 0:5b930e09bd6e 28
bclaus 0:5b930e09bd6e 29
bclaus 0:5b930e09bd6e 30 float ax, ay, az;
bclaus 0:5b930e09bd6e 31 float mx, my, mz;
bclaus 0:5b930e09bd6e 32
bclaus 0:5b930e09bd6e 33 bool write_reg(int addr_i2c,int addr_reg, char v);
bclaus 0:5b930e09bd6e 34 bool read_reg(int addr_i2c,int addr_reg, char *v);
bclaus 0:5b930e09bd6e 35 bool recv(char sad, char sub, char *buf, int length);
bclaus 0:5b930e09bd6e 36 };
bclaus 0:5b930e09bd6e 37
bclaus 0:5b930e09bd6e 38 #endif