Port of LSM303DLHC with modified registers to work with LSM303D
LSM303D.h
- Committer:
- bclaus
- Date:
- 2016-02-08
- Revision:
- 2:8cd0c3c11b48
- Parent:
- 0:5b930e09bd6e
File content as of revision 2:8cd0c3c11b48:
#ifndef __LSM303D_H #define __LSM303D_H #include "mbed.h" class LSM303D { public: /** Create a new interface for an LSM303D * * @param sda is the pin for the I2C SDA line * @param scl is the pin for the I2C SCL line */ LSM303D(PinName sda, PinName scl); /** read the raw accelerometer and compass values * * @param ax,ay,az is the accelerometer 3d vector, written by the function * @param mx,my,mz is the magnetometer 3d vector, written by the function */ bool read(float *ax, float *ay, float *az, float *mx, float *my, float *mz); private: I2C _LSM303; float ax, ay, az; float mx, my, mz; bool write_reg(int addr_i2c,int addr_reg, char v); bool read_reg(int addr_i2c,int addr_reg, char *v); bool recv(char sad, char sub, char *buf, int length); }; #endif