13 #include <Adafruit_Sensor.h> 15 #ifdef __AVR_ATtiny85__ 16 #include "TinyWireM.h" 17 #define Wire TinyWireM 25 #define HMC5883_ADDRESS_MAG (0x3C >> 1) // 0011110x 31 HMC5883_REGISTER_MAG_CRA_REG_M = 0x00,
32 HMC5883_REGISTER_MAG_CRB_REG_M = 0x01,
33 HMC5883_REGISTER_MAG_MR_REG_M = 0x02,
34 HMC5883_REGISTER_MAG_OUT_X_H_M = 0x03,
35 HMC5883_REGISTER_MAG_OUT_X_L_M = 0x04,
36 HMC5883_REGISTER_MAG_OUT_Z_H_M = 0x05,
37 HMC5883_REGISTER_MAG_OUT_Z_L_M = 0x06,
38 HMC5883_REGISTER_MAG_OUT_Y_H_M = 0x07,
39 HMC5883_REGISTER_MAG_OUT_Y_L_M = 0x08,
40 HMC5883_REGISTER_MAG_SR_REG_Mg = 0x09,
41 HMC5883_REGISTER_MAG_IRA_REG_M = 0x0A,
42 HMC5883_REGISTER_MAG_IRB_REG_M = 0x0B,
43 HMC5883_REGISTER_MAG_IRC_REG_M = 0x0C,
44 HMC5883_REGISTER_MAG_TEMP_OUT_H_M = 0x31,
45 HMC5883_REGISTER_MAG_TEMP_OUT_L_M = 0x32
52 HMC5883_MAGGAIN_1_3 = 0x20,
53 HMC5883_MAGGAIN_1_9 = 0x40,
54 HMC5883_MAGGAIN_2_5 = 0x60,
55 HMC5883_MAGGAIN_4_0 = 0x80,
56 HMC5883_MAGGAIN_4_7 = 0xA0,
57 HMC5883_MAGGAIN_5_6 = 0xC0,
58 HMC5883_MAGGAIN_8_1 = 0xE0
74 #define HMC5883_ID (0b11010100) 87 getEvent(sensors_event_t *);
88 void getSensor(sensor_t *);
95 void write8(byte address, byte reg, byte value);
96 byte read8(byte address, byte reg);
struct hmc5883MagData_s hmc5883MagData
Internal magnetometer data type.
hmc5883MagRegisters_t
Registers.
Definition: Adafruit_HMC5883_U.h:30
hmc5883MagGain
Magnetometer gain settings.
Definition: Adafruit_HMC5883_U.h:51
Internal magnetometer data type.
Definition: Adafruit_HMC5883_U.h:64
Unified sensor driver for the magnetometer ///.
Definition: Adafruit_HMC5883_U.h:77
float orientation
Magnetometer orientation.
Definition: Adafruit_HMC5883_U.h:68
float y
Magnetometer y value.
Definition: Adafruit_HMC5883_U.h:66
float x
Magnetometer x value.
Definition: Adafruit_HMC5883_U.h:65
float z
Magnetometer z value.
Definition: Adafruit_HMC5883_U.h:67