6 #ifndef LSM303DLH_MAG_H 7 #define LSM303DLH_MAG_H 14 #include <Adafruit_BusIO_Register.h> 15 #include <Adafruit_I2CDevice.h> 16 #include <Adafruit_Sensor.h> 22 #define _ADDRESS_MAG 0x1E 28 LSM303_REGISTER_MAG_CRA_REG_M = 0x00,
29 LSM303_REGISTER_MAG_CRB_REG_M = 0x01,
30 LSM303_REGISTER_MAG_MR_REG_M = 0x02,
31 LSM303_REGISTER_MAG_OUT_X_H_M = 0x03,
32 LSM303_REGISTER_MAG_OUT_X_L_M = 0x04,
33 LSM303_REGISTER_MAG_OUT_Z_H_M = 0x05,
34 LSM303_REGISTER_MAG_OUT_Z_L_M = 0x06,
35 LSM303_REGISTER_MAG_OUT_Y_H_M = 0x07,
36 LSM303_REGISTER_MAG_OUT_Y_L_M = 0x08,
37 LSM303_REGISTER_MAG_SR_REG_Mg = 0x09,
38 LSM303_REGISTER_MAG_IRA_REG_M = 0x0A,
39 LSM303_REGISTER_MAG_IRB_REG_M = 0x0B,
40 LSM303_REGISTER_MAG_IRC_REG_M = 0x0C,
41 LSM303_REGISTER_MAG_TEMP_OUT_H_M = 0x31,
42 LSM303_REGISTER_MAG_TEMP_OUT_L_M = 0x32
87 #define LSM303_ID (0b11010100) 97 bool begin(uint8_t i2c_addr =
_ADDRESS_MAG, TwoWire *wire = &Wire);
99 void enableAutoRange(
bool enable);
102 bool getEvent(sensors_event_t *);
103 void getSensor(sensor_t *);
112 void write8(byte address, byte reg, byte value);
113 byte read8(byte address, byte reg);
115 Adafruit_I2CDevice *i2c_dev;
lsm303MagGain magGain
The current magnetometer gain.
Definition: Adafruit_LSM303DLH_Mag.h:106
int16_t y
y-axis data
Definition: Adafruit_LSM303DLH_Mag.h:82
int16_t z
z-axis data
Definition: Adafruit_LSM303DLH_Mag.h:83
lsm303MagData raw
Last read magnetometer data will be available here.
Definition: Adafruit_LSM303DLH_Mag.h:105
int16_t x
x-axis data
Definition: Adafruit_LSM303DLH_Mag.h:81
INTERNAL ACCELERATION DATA TYPE.
Definition: Adafruit_LSM303DLH_Mag.h:80
bool autoRangeEnabled
True if auto ranging is enabled.
Definition: Adafruit_LSM303DLH_Mag.h:107
lsm303MagRate
Magnetometer update rate settings.
Definition: Adafruit_LSM303DLH_Mag.h:63
lsm303MagRegisters_t
I2C bits.
Definition: Adafruit_LSM303DLH_Mag.h:27
Unified sensor driver for the magnetometer.
Definition: Adafruit_LSM303DLH_Mag.h:93
lsm303MagGain
Magnetometer gain settings.
Definition: Adafruit_LSM303DLH_Mag.h:49
#define _ADDRESS_MAG
I2C Address.
Definition: Adafruit_LSM303DLH_Mag.h:22
struct lsm303MagData_s lsm303MagData
INTERNAL ACCELERATION DATA TYPE.