![]() |
ISSDK
1.7
IoT Sensing Software Development Kit
|
The mag3110.h contains the MAG3110 Magnetic sensor register definitions, access macros, and device access functions. More...
Go to the source code of this file.
Data Structures | |
union | MAG3110_DR_STATUS_t |
union | MAG3110_SYSMOD_t |
union | MAG3110_OFF_X_LSB_t |
union | MAG3110_OFF_Y_LSB_t |
union | MAG3110_OFF_Z_LSB_t |
union | MAG3110_CTRL_REG1_t |
union | MAG3110_CTRL_REG2_t |
Macros | |
#define | MAG3110_I2C_ADDRESS (0x0E) /* MAG3110 I2C Slave Address. */ |
#define | MAG3110_WHOAMI_VALUE (0xC4) /* MAG3110 Who_Am_I Value. */ |
#define | MAG3110_DR_STATUS_XDR_MASK ((uint8_t) 0x01) |
#define | MAG3110_DR_STATUS_XDR_SHIFT ((uint8_t) 0) |
#define | MAG3110_DR_STATUS_YDR_MASK ((uint8_t) 0x02) |
#define | MAG3110_DR_STATUS_YDR_SHIFT ((uint8_t) 1) |
#define | MAG3110_DR_STATUS_ZDR_MASK ((uint8_t) 0x04) |
#define | MAG3110_DR_STATUS_ZDR_SHIFT ((uint8_t) 2) |
#define | MAG3110_DR_STATUS_ZYXDR_MASK ((uint8_t) 0x08) |
#define | MAG3110_DR_STATUS_ZYXDR_SHIFT ((uint8_t) 3) |
#define | MAG3110_DR_STATUS_XOW_MASK ((uint8_t) 0x10) |
#define | MAG3110_DR_STATUS_XOW_SHIFT ((uint8_t) 4) |
#define | MAG3110_DR_STATUS_YOW_MASK ((uint8_t) 0x20) |
#define | MAG3110_DR_STATUS_YOW_SHIFT ((uint8_t) 5) |
#define | MAG3110_DR_STATUS_ZOW_MASK ((uint8_t) 0x40) |
#define | MAG3110_DR_STATUS_ZOW_SHIFT ((uint8_t) 6) |
#define | MAG3110_DR_STATUS_ZYXOW_MASK ((uint8_t) 0x80) |
#define | MAG3110_DR_STATUS_ZYXOW_SHIFT ((uint8_t) 7) |
#define | MAG3110_DR_STATUS_XDR_DRDY ((uint8_t) 0x01) /* - Set to 1 whenever new X-axis data acquisition is */ |
#define | MAG3110_DR_STATUS_YDR_DRDY ((uint8_t) 0x02) /* - Set to 1 whenever new Y-axis data acquisition is */ |
#define | MAG3110_DR_STATUS_ZDR_DRDY ((uint8_t) 0x04) /* - Set to 1 whenever new Z-axis data acquisition is */ |
#define | MAG3110_DR_STATUS_ZYXDR_DRDY ((uint8_t) 0x08) /* - Signals that new acquisition for any of the */ |
#define | MAG3110_DR_STATUS_XOW_OWR ((uint8_t) 0x10) /* - Set to 1 whenever new X-axis acquisition is */ |
#define | MAG3110_DR_STATUS_YOW_OWR ((uint8_t) 0x20) /* - Set to 1 whenever new Y-axis acquisition is */ |
#define | MAG3110_DR_STATUS_ZOW_OWR ((uint8_t) 0x40) /* - Set to 1 whenever new Z-axis acquisition is */ |
#define | MAG3110_DR_STATUS_ZYXOW_OWR ((uint8_t) 0x80) /* - Set to 1 whenever new data is acquired before */ |
#define | MAG3110_SYSMOD_SYSMOD_MASK ((uint8_t) 0x03) |
#define | MAG3110_SYSMOD_SYSMOD_SHIFT ((uint8_t) 0) |
#define | MAG3110_SYSMOD_SYSMOD_STANDBY ((uint8_t) 0x00) /* - STANDBY Mode. */ |
#define | MAG3110_SYSMOD_SYSMOD_ACTIVE_RAW ((uint8_t) 0x01) /* - ACTIVE Mode, RAW Data. */ |
#define | MAG3110_SYSMOD_SYSMOD_ACTIVE ((uint8_t) 0x02) /* - ACTIVE Mode, non-RAW user-corrected Data. */ |
#define | MAG3110_OFF_X_LSB_OFF_X_LSB_MASK ((uint8_t) 0xFE) |
#define | MAG3110_OFF_X_LSB_OFF_X_LSB_SHIFT ((uint8_t) 1) |
#define | MAG3110_OFF_Y_LSB_OFF_Y_LSB_MASK ((uint8_t) 0xFE) |
#define | MAG3110_OFF_Y_LSB_OFF_Y_LSB_SHIFT ((uint8_t) 1) |
#define | MAG3110_OFF_Z_LSB_OFF_Z_LSB_MASK ((uint8_t) 0xFE) |
#define | MAG3110_OFF_Z_LSB_OFF_Z_LSB_SHIFT ((uint8_t) 1) |
#define | MAG3110_CTRL_REG1_AC_MASK ((uint8_t) 0x01) |
#define | MAG3110_CTRL_REG1_AC_SHIFT ((uint8_t) 0) |
#define | MAG3110_CTRL_REG1_TM_MASK ((uint8_t) 0x02) |
#define | MAG3110_CTRL_REG1_TM_SHIFT ((uint8_t) 1) |
#define | MAG3110_CTRL_REG1_FR_MASK ((uint8_t) 0x04) |
#define | MAG3110_CTRL_REG1_FR_SHIFT ((uint8_t) 2) |
#define | MAG3110_CTRL_REG1_OS_MASK ((uint8_t) 0x18) |
#define | MAG3110_CTRL_REG1_OS_SHIFT ((uint8_t) 3) |
#define | MAG3110_CTRL_REG1_DR_MASK ((uint8_t) 0xE0) |
#define | MAG3110_CTRL_REG1_DR_SHIFT ((uint8_t) 5) |
#define | MAG3110_CTRL_REG1_AC_STANDBY ((uint8_t) 0x00) /* - Standby Mode. */ |
#define | MAG3110_CTRL_REG1_AC_ACTIVE ((uint8_t) 0x01) /* - Active Mode. */ |
#define | MAG3110_CTRL_REG1_TM_NORMAL ((uint8_t) 0x00) /* - Normal operation based on AC condition. */ |
#define | MAG3110_CTRL_REG1_TM_TRIGGER ((uint8_t) 0x02) /* - Trigger Measurement. */ |
#define | MAG3110_CTRL_REG1_FR_FULL ((uint8_t) 0x00) /* - The full 16-bit values are read. */ |
#define | MAG3110_CTRL_REG1_FR_FAST ((uint8_t) 0x04) /* - 8-bit values read from the MSB registers. */ |
#define | MAG3110_CTRL_REG1_OS_OSR_16 ((uint8_t) 0x00) /* - OSR = 16. */ |
#define | MAG3110_CTRL_REG1_OS_OSR_32 ((uint8_t) 0x08) /* - OSR = 32. */ |
#define | MAG3110_CTRL_REG1_OS_OSR_64 ((uint8_t) 0x10) /* - OSR = 64. */ |
#define | MAG3110_CTRL_REG1_OS_OSR_128 ((uint8_t) 0x18) /* - OSR = 128. */ |
#define | MAG3110_CTRL_REG1_DR_ODR_0 ((uint8_t) 0x00) /* - ADC Rate = 1280Hz; Output Rate = ADC/OS. */ |
#define | MAG3110_CTRL_REG1_DR_ODR_1 ((uint8_t) 0x20) /* - ADC Rate = 640Hz; Output Rate = ADC/OS. */ |
#define | MAG3110_CTRL_REG1_DR_ODR_2 ((uint8_t) 0x40) /* - ADC Rate = 320Hz; Output Rate = ADC/OS. */ |
#define | MAG3110_CTRL_REG1_DR_ODR_3 ((uint8_t) 0x60) /* - ADC Rate = 160Hz; Output Rate = ADC/OS. */ |
#define | MAG3110_CTRL_REG1_DR_ODR_4 ((uint8_t) 0x80) /* - ADC Rate = 80Hz; Output Rate = ADC/OS. */ |
#define | MAG3110_CTRL_REG1_DR_ODR_5 ((uint8_t) 0xa0) /* - ADC Rate = 80Hz; Output Rate = ADC/OS. */ |
#define | MAG3110_CTRL_REG1_DR_ODR_6 ((uint8_t) 0xc0) /* - ADC Rate = 80Hz; Output Rate = ADC/OS. */ |
#define | MAG3110_CTRL_REG1_DR_ODR_7 ((uint8_t) 0xe0) /* - ADC Rate = 80Hz; Output Rate = ADC/OS. */ |
#define | MAG3110_CTRL_REG2_MAG_RST_MASK ((uint8_t) 0x10) |
#define | MAG3110_CTRL_REG2_MAG_RST_SHIFT ((uint8_t) 4) |
#define | MAG3110_CTRL_REG2_RAW_MASK ((uint8_t) 0x20) |
#define | MAG3110_CTRL_REG2_RAW_SHIFT ((uint8_t) 5) |
#define | MAG3110_CTRL_REG2_AUTO_MSRT_EN_MASK ((uint8_t) 0x80) |
#define | MAG3110_CTRL_REG2_AUTO_MSRT_EN_SHIFT ((uint8_t) 7) |
#define | MAG3110_CTRL_REG2_MAG_RST_EN ((uint8_t) 0x10) /* - Reset cycle initiate or Reset cycle busy/active. */ |
#define | MAG3110_CTRL_REG2_RAW_NORMAL ((uint8_t) 0x00) /* - The data values are corrected by the user offset */ |
#define | MAG3110_CTRL_REG2_RAW_RAW ((uint8_t) 0x20) /* - The data values are not corrected by the user */ |
#define | MAG3110_CTRL_REG2_AUTO_MSRT_EN_DIS ((uint8_t) 0x00) /* - Automatic magnetic sensor resets disabled. */ |
#define | MAG3110_CTRL_REG2_AUTO_MSRT_EN_EN ((uint8_t) 0x80) /* - Automatic magnetic sensor resets enabled. */ |
Typedefs | |
typedef uint8_t | MAG3110_OUT_X_MSB_t |
typedef uint8_t | MAG3110_OUT_X_LSB_t |
typedef uint8_t | MAG3110_OUT_Y_MSB_t |
typedef uint8_t | MAG3110_OUT_Y_LSB_t |
typedef uint8_t | MAG3110_OUT_Z_MSB_t |
typedef uint8_t | MAG3110_OUT_Z_LSB_t |
typedef uint8_t | MAG3110_WHO_AM_I_t |
typedef uint8_t | MAG3110_OFF_X_MSB_t |
typedef uint8_t | MAG3110_OFF_Y_MSB_t |
typedef uint8_t | MAG3110_OFF_Z_MSB_t |
typedef uint8_t | MAG3110_DIE_TEMP_t |
Enumerations | |
enum | { MAG3110_DR_STATUS = 0x00, MAG3110_OUT_X_MSB = 0x01, MAG3110_OUT_X_LSB = 0x02, MAG3110_OUT_Y_MSB = 0x03, MAG3110_OUT_Y_LSB = 0x04, MAG3110_OUT_Z_MSB = 0x05, MAG3110_OUT_Z_LSB = 0x06, MAG3110_WHO_AM_I = 0x07, MAG3110_SYSMOD = 0x08, MAG3110_OFF_X_MSB = 0x09, MAG3110_OFF_X_LSB = 0x0A, MAG3110_OFF_Y_MSB = 0x0B, MAG3110_OFF_Y_LSB = 0x0C, MAG3110_OFF_Z_MSB = 0x0D, MAG3110_OFF_Z_LSB = 0x0E, MAG3110_DIE_TEMP = 0x0F, MAG3110_CTRL_REG1 = 0x10, MAG3110_CTRL_REG2 = 0x11 } |
The mag3110.h contains the MAG3110 Magnetic sensor register definitions, access macros, and device access functions.
Definition in file mag3110.h.
#define MAG3110_CTRL_REG1_AC_ACTIVE ((uint8_t) 0x01) /* - Active Mode. */ |
Definition at line 412 of file mag3110.h.
Referenced by MAG3110_I2C_Configure().
#define MAG3110_CTRL_REG1_AC_MASK ((uint8_t) 0x01) |
Definition at line 392 of file mag3110.h.
Referenced by MAG3110_I2C_Configure().
#define MAG3110_CTRL_REG1_AC_STANDBY ((uint8_t) 0x00) /* - Standby Mode. */ |
Definition at line 411 of file mag3110.h.
Referenced by MAG3110_I2C_Configure().
#define MAG3110_CTRL_REG1_DR_ODR_0 ((uint8_t) 0x00) /* - ADC Rate = 1280Hz; Output Rate = ADC/OS. */ |
#define MAG3110_CTRL_REG1_DR_ODR_1 ((uint8_t) 0x20) /* - ADC Rate = 640Hz; Output Rate = ADC/OS. */ |
#define MAG3110_CTRL_REG1_DR_ODR_2 ((uint8_t) 0x40) /* - ADC Rate = 320Hz; Output Rate = ADC/OS. */ |
#define MAG3110_CTRL_REG1_DR_ODR_3 ((uint8_t) 0x60) /* - ADC Rate = 160Hz; Output Rate = ADC/OS. */ |
#define MAG3110_CTRL_REG1_DR_ODR_4 ((uint8_t) 0x80) /* - ADC Rate = 80Hz; Output Rate = ADC/OS. */ |
#define MAG3110_CTRL_REG1_DR_ODR_5 ((uint8_t) 0xa0) /* - ADC Rate = 80Hz; Output Rate = ADC/OS. */ |
#define MAG3110_CTRL_REG1_DR_ODR_6 ((uint8_t) 0xc0) /* - ADC Rate = 80Hz; Output Rate = ADC/OS. */ |
#define MAG3110_CTRL_REG1_DR_ODR_7 ((uint8_t) 0xe0) /* - ADC Rate = 80Hz; Output Rate = ADC/OS. */ |
#define MAG3110_CTRL_REG1_FR_FAST ((uint8_t) 0x04) /* - 8-bit values read from the MSB registers. */ |
#define MAG3110_CTRL_REG1_FR_FULL ((uint8_t) 0x00) /* - The full 16-bit values are read. */ |
#define MAG3110_CTRL_REG1_OS_OSR_128 ((uint8_t) 0x18) /* - OSR = 128. */ |
#define MAG3110_CTRL_REG1_OS_OSR_16 ((uint8_t) 0x00) /* - OSR = 16. */ |
#define MAG3110_CTRL_REG1_OS_OSR_32 ((uint8_t) 0x08) /* - OSR = 32. */ |
#define MAG3110_CTRL_REG1_OS_OSR_64 ((uint8_t) 0x10) /* - OSR = 64. */ |
#define MAG3110_CTRL_REG1_TM_MASK ((uint8_t) 0x02) |
#define MAG3110_CTRL_REG1_TM_NORMAL ((uint8_t) 0x00) /* - Normal operation based on AC condition. */ |
#define MAG3110_CTRL_REG1_TM_TRIGGER ((uint8_t) 0x02) /* - Trigger Measurement. */ |
#define MAG3110_CTRL_REG2_AUTO_MSRT_EN_DIS ((uint8_t) 0x00) /* - Automatic magnetic sensor resets disabled. */ |
#define MAG3110_CTRL_REG2_AUTO_MSRT_EN_EN ((uint8_t) 0x80) /* - Automatic magnetic sensor resets enabled. */ |
#define MAG3110_CTRL_REG2_AUTO_MSRT_EN_MASK ((uint8_t) 0x80) |
#define MAG3110_CTRL_REG2_AUTO_MSRT_EN_SHIFT ((uint8_t) 7) |
#define MAG3110_CTRL_REG2_MAG_RST_EN ((uint8_t) 0x10) /* - Reset cycle initiate or Reset cycle busy/active. */ |
Definition at line 471 of file mag3110.h.
Referenced by MAG3110_I2C_DeInit().
#define MAG3110_CTRL_REG2_MAG_RST_MASK ((uint8_t) 0x10) |
Definition at line 458 of file mag3110.h.
Referenced by MAG3110_I2C_DeInit().
#define MAG3110_CTRL_REG2_RAW_NORMAL ((uint8_t) 0x00) /* - The data values are corrected by the user offset */ |
#define MAG3110_CTRL_REG2_RAW_RAW ((uint8_t) 0x20) /* - The data values are not corrected by the user */ |
#define MAG3110_DR_STATUS_XDR_DRDY ((uint8_t) 0x01) /* - Set to 1 whenever new X-axis data acquisition is */ |
#define MAG3110_DR_STATUS_XOW_OWR ((uint8_t) 0x10) /* - Set to 1 whenever new X-axis acquisition is */ |
#define MAG3110_DR_STATUS_YDR_DRDY ((uint8_t) 0x02) /* - Set to 1 whenever new Y-axis data acquisition is */ |
#define MAG3110_DR_STATUS_YOW_OWR ((uint8_t) 0x20) /* - Set to 1 whenever new Y-axis acquisition is */ |
#define MAG3110_DR_STATUS_ZDR_DRDY ((uint8_t) 0x04) /* - Set to 1 whenever new Z-axis data acquisition is */ |
#define MAG3110_DR_STATUS_ZOW_OWR ((uint8_t) 0x40) /* - Set to 1 whenever new Z-axis acquisition is */ |
#define MAG3110_DR_STATUS_ZYXDR_DRDY ((uint8_t) 0x08) /* - Signals that new acquisition for any of the */ |
#define MAG3110_DR_STATUS_ZYXDR_MASK ((uint8_t) 0x08) |
#define MAG3110_DR_STATUS_ZYXOW_OWR ((uint8_t) 0x80) /* - Set to 1 whenever new data is acquired before */ |
#define MAG3110_I2C_ADDRESS (0x0E) /* MAG3110 I2C Slave Address. */ |
#define MAG3110_SYSMOD_SYSMOD_ACTIVE ((uint8_t) 0x02) /* - ACTIVE Mode, non-RAW user-corrected Data. */ |
#define MAG3110_SYSMOD_SYSMOD_ACTIVE_RAW ((uint8_t) 0x01) /* - ACTIVE Mode, RAW Data. */ |
#define MAG3110_SYSMOD_SYSMOD_STANDBY ((uint8_t) 0x00) /* - STANDBY Mode. */ |
#define MAG3110_WHOAMI_VALUE (0xC4) /* MAG3110 Who_Am_I Value. */ |
Definition at line 37 of file mag3110.h.
Referenced by MAG3110_Init(), and main().
typedef uint8_t MAG3110_DIE_TEMP_t |
typedef uint8_t MAG3110_OFF_X_MSB_t |
typedef uint8_t MAG3110_OFF_Y_MSB_t |
typedef uint8_t MAG3110_OFF_Z_MSB_t |
typedef uint8_t MAG3110_OUT_X_LSB_t |
typedef uint8_t MAG3110_OUT_X_MSB_t |
typedef uint8_t MAG3110_OUT_Y_LSB_t |
typedef uint8_t MAG3110_OUT_Y_MSB_t |
typedef uint8_t MAG3110_OUT_Z_LSB_t |
typedef uint8_t MAG3110_OUT_Z_MSB_t |
typedef uint8_t MAG3110_WHO_AM_I_t |
anonymous enum |
MAG3110 Sensor Internal Registers