Si72xx - Magnetic Hall Effect Sensor
Description
Functions | |
uint32_t | sl_si72xx_read_register (I2C_TypeDef *i2c, uint8_t addr, uint8_t reg, uint8_t *data) |
PROTOTYPES **********************************. | |
uint32_t | sl_si72xx_write_register (I2C_TypeDef *i2c, uint8_t addr, uint8_t reg, uint8_t data) |
uint32_t | sl_si72xx_wake_up_and_idle (I2C_TypeDef *i2c, uint8_t addr) |
uint32_t | sl_si72xx_read_magfield_data (I2C_TypeDef *i2c, uint8_t addr, int16_t *magData) |
uint32_t | sl_si72xx_from_idle_go_to_sleep (I2C_TypeDef *i2c, uint8_t addr) |
uint32_t | sl_si72xx_from_idle_go_to_sltimeena (I2C_TypeDef *i2c, uint8_t addr) |
uint32_t | sl_si72xx_read_magfield_data_and_sleep (I2C_TypeDef *i2c, uint8_t addr, Si72xxFieldScale_t mTScale, Si72xxSleepMode_t sleepMode, int16_t *magFieldData) |
int32_t | sl_si72xx_convert_data_codes_to_magnetic_field (Si72xxFieldScale_t fieldScale, int16_t dataCode) |
uint32_t | sl_si72xx_enter_sleep_mode (I2C_TypeDef *i2c, uint8_t addr, Si72xxSleepMode_t sleepMode) |
uint32_t | sl_si72xx_enter_latch_mode (I2C_TypeDef *i2c, uint8_t addr) |
uint32_t | sl_si72xx_read_temperature_and_sleep (I2C_TypeDef *i2c, uint8_t addr, int32_t *rawTemp) |
uint32_t | sl_si72xx_read_corrected_temp_and_sleep (I2C_TypeDef *i2c, uint8_t addr, int16_t offsetData, int16_t gainData, int32_t *correctedTemp) |
uint32_t | sl_si72xx_read_temp_correction_data_and_sleep (I2C_TypeDef *i2c, uint8_t addr, int16_t *offsetValue, int16_t *gainValue) |
uint32_t | sl_si72xx_identify_and_sleep (I2C_TypeDef *i2c, uint8_t addr, uint8_t *partId, uint8_t *partRev) |
uint32_t | sl_si72xx_read_variant_and_sleep (I2C_TypeDef *i2c, uint8_t addr, uint8_t *basePn, uint8_t *pnVariant) |
Macros | |
#define | SI7200_ADDR_0 (0x30 << 1) |
DEFINES ***********************************. | |
#define | SI7200_ADDR_1 (0x31 << 1) |
#define | SI7200_ADDR_2 (0x32 << 1) |
#define | SI7200_ADDR_3 (0x33 << 1) |
#define | SI72XX_HREVID 0xC0 |
I2C registers for Si72xx. | |
#define | SI72XX_DSPSIGM 0xC1 |
#define | SI72XX_DSPSIGL 0xC2 |
#define | SI72XX_DSPSIGSEL 0xC3 |
#define | SI72XX_POWER_CTRL 0xC4 |
#define | SI72XX_ARAUTOINC 0xC5 |
#define | SI72XX_CTRL1 0xC6 |
#define | SI72XX_CTRL2 0xC7 |
#define | SI72XX_SLTIME 0xC8 |
#define | SI72XX_CTRL3 0xC9 |
#define | SI72XX_A0 0xCA |
#define | SI72XX_A1 0xCB |
#define | SI72XX_A2 0xCC |
#define | SI72XX_CTRL4 0xCD |
#define | SI72XX_A3 0xCE |
#define | SI72XX_A4 0xCF |
#define | SI72XX_A5 0xD0 |
#define | SI72XX_OTP_ADDR 0xE1 |
#define | SI72XX_OTP_DATA 0xE2 |
#define | SI72XX_OTP_CTRL 0xE3 |
#define | SI72XX_TM_FG 0xE4 |
#define | SI72XX_OTP_20MT_ADDR 0x21 |
#define | SI72XX_OTP_200MT_ADDR 0x27 |
#define | SI72XX_ERROR_BUSY 0xfe |
#define | SI72XX_ERROR_NODATA 0xfd |
Enumerations | |
enum | Si72xxFieldScale_t { SI7210_20MT, SI7210_200MT } |
ENUMS ************************************. | |
enum | Si72xxSleepMode_t { SI72XX_SLEEP_MODE, SI72XX_SLTIMEENA_MODE } |
Si72xx sleep modes. | |
Function Documentation
◆ sl_si72xx_read_register()
uint32_t sl_si72xx_read_register | ( | I2C_TypeDef * | i2c, |
uint8_t | addr, |
||
uint8_t | reg, |
||
uint8_t * | data |
||
) |
PROTOTYPES **********************************.
Macro Definition Documentation
◆ SI7200_ADDR_0
#define SI7200_ADDR_0 (0x30 << 1) |
DEFINES ***********************************.
I2C device address for Si72xx
◆ SI72XX_HREVID
#define SI72XX_HREVID 0xC0 |
I2C registers for Si72xx.
Enumeration Type Documentation
◆ Si72xxFieldScale_t
enum Si72xxFieldScale_t |
ENUMS ************************************.
Si72xx magnetic field full-scales
◆ Si72xxSleepMode_t
enum Si72xxSleepMode_t |
Si72xx sleep modes.