at30tse75x.h¶
Driver for the AT30TSE75x temperature sensor with serial EEPROM.
-
AT30TSE75X_TEMP_ADDR¶ 1
(0x48)
-
AT30TSE75X_EEPROM_ADDR¶ 1
(0x50)
-
AT30TSE75X_REG__TEMPERATURE¶ 1
(0x00)
-
AT30TSE75X_REG__CONFIG¶ 1
(0x01)
-
AT30TSE75X_REG__LIMIT_LOW¶ 1
(0x02)
-
AT30TSE75X_REG__LIMIT_HIGH¶ 1
(0x03)
-
AT30TSE75X_REG__NV_CONFIG¶ 1
(0x11)
-
AT30TSE75X_REG__NV_LIMIT_LOW¶ 1
(0x12)
-
AT30TSE75X_REG__NV_LIMIR_HIGH¶ 1
(0x13)
-
AT30TSE75X_INTEGER_MASK¶ 1
(0x00ff)
-
AT30TSE75X_INTEGER_SHIFT¶ 1
(0)
-
AT30TSE75X_FRACTIONAL_MASK¶ 1
(0xf000)
-
AT30TSE75X_FRACTIONAL_SHIFT¶ 1
(12)
-
AT30TSE75X_FRACTIONAL_BASE¶ 1
(0.0625f)
-
AT30TSE75X_CONFIG__OS_BIT¶ 1
(1 << 7)
-
AT30TSE75X_CONFIG__RESOLUTION_MASK¶ 1
(0x60)
-
AT30TSE75X_CONFIG__RESOLUTION_SHIFT¶ 1
(5)
-
AT30TSE75X_CONFIG__FTQ_MASK¶ 1
(0x18)
-
AT30TSE75X_CONFIG__FTQ_SHIFT¶ 1
(3)
-
AT30TSE75X_CONFIG__ALERT_POL_BIT¶ 1
(1 << 2)
-
AT30TSE75X_CONFIG__ALARM_MODE_BIT¶ 1
(1 << 1)
-
AT30TSE75X_CONFIG__SHUTDOWN_BIT¶ 1
(1 << 0)
-
AT30TSE75X_CMD__SAVE_TO_NVRAM¶ 1
(0x48)
-
AT30TSE75X_CMD__RESTORE_FROM_NVRAM¶ 1
(0xb8)
-
AT30TSE75X_CMD__GENERAL_CALL_RESET¶ 1
(0x06)
-
AT30TSE75X_CMD__GENERAL_CALL_RELATCH¶ 1
(0x04)
-
AT30TSE75X_BUS_FREE_TIME_US¶ 1
(1U)
-
enum
at30tse75x_resolution_t¶ - AT30TSE75X_RESOLUTION_9BIT
= 0 - AT30TSE75X_RESOLUTION_10BIT
= 1 - AT30TSE75X_RESOLUTION_11BIT
= 2 - AT30TSE75X_RESOLUTION_12BIT
= 3
- AT30TSE75X_RESOLUTION_9BIT
-
enum
at30tse75x_mode_t¶ - AT30TSE75X_MODE_COMPARATOR
- AT30TSE75X_MODE_INTERRUPT
- AT30TSE75X_MODE_ONE_SHOT
-
enum
at30tse75x_fault_tolerance_t¶ - AT30TSE75X_ALARM_AFTER_1
= 0 - AT30TSE75X_ALARM_AFTER_2
= 1 - AT30TSE75X_ALARM_AFTER_4
= 2 - AT30TSE75X_ALARM_AFTER_6
= 3
- AT30TSE75X_ALARM_AFTER_1
-
enum
at30tse75x_alarm_polatity_t¶ - AT30TSE75X_ALARM_ACTIVE_LOW
- AT30TSE75X_ALARM_ACTIVE_HIGH
-
int
at30tse75x_init(at30tse75x_t * dev,i2c.h::i2c_ti2c, uint8_t addr)¶ Initialize a AT30TSE75x device.
Parameters
The valid address range is 0x48 - 0x4f depending on the configuration of the address pins A0-A2.dev: device descriptor i2c: I2C bus the device is connected to addr: I2C address of the device Return values
- 0 on success
- -1 on error
- -2 on invalid address
-
int
at30tse75x_save_config(const at30tse75x_t * dev)¶ Save configuration register to non-volatile backup register.
Parameters
dev: device descriptor Return values
- 0 on success
- -1 on error
-
int
at30tse75x_restore_config(const at30tse75x_t * dev)¶ Restore configuration register from non-volatile backup register.
Parameters
dev: device descriptor Return values
- 0 on success
- -1 on error
-
int
at30tse75x_get_config(const at30tse75x_t * dev, uint8_t * data)¶ Get content of configuration register.
Parameters
dev: device descriptor data: buffer where config register will be written to Return values
- 0 on success
- -1 on error
-
int
at30tse75x_set_config(const at30tse75x_t * dev, uint8_t data)¶ Set content of configuration register.
Parameters
dev: device descriptor data: new value for configuration register Return values
- 0 on success
- -1 on error
-
int
at30tse75x_set_resolution(const at30tse75x_t * dev,at30tse75x.h::at30tse75x_resolution_tresolution)¶ Set temperature resolution.
Parameters
dev: device descriptor resolution: temperature resolution Return values
- 0 on success
- -1 on error
- -2 on bad user input
-
int
at30tse75x_set_mode(const at30tse75x_t * dev,at30tse75x.h::at30tse75x_mode_tmode)¶ Set operation mode.
Parameters
dev: device descriptor mode: operation mode Return values
- 0 on success
- -1 on device error
- -2 on bad user input
-
int
at30tse75x_set_alarm_polarity(const at30tse75x_t * dev,at30tse75x.h::at30tse75x_alarm_polatity_tpolarity)¶ Set polarity of ALERT pin.
Parameters
dev: device descriptor polarity: polarity of ALERT pin Return values
- 0 on success
- -1 on device error
- -2 on bad user input
-
int
at30tse75x_set_fault_tolerance(const at30tse75x_t * dev,at30tse75x.h::at30tse75x_fault_tolerance_ttolerance)¶ Set tolerance to outlying measurements.
Parameters
dev: device descriptor tolerance: tolerance Return values
- 0 on success
- -1 on device error
- -2 on bad user input
-
int
at30tse75x_set_limit_low(const at30tse75x_t * dev, int8_t t_low)¶ Set T_Low limit.
Parameters
dev: device descriptor t_low: lower temperature limit Return values
- 0 on success
- -1 on device error
- -2 on bad user input
-
int
at30tse75x_set_limit_high(const at30tse75x_t * dev, int8_t t_high)¶ Set T_High limit.
Parameters
dev: device descriptor t_high: upper temperature limit Return values
- 0 on success
- -1 on error
-
int
at30tse75x_get_temperature(const at30tse75x_t * dev, float * temperature)¶ Get measured temperature.
Parameters
dev: device descriptor temperature: float buffer where temperature will be written to Return values
- 0 on success
- -1 on error
-
struct
at30tse75x_t¶ Device descriptor for a AT30TSE75x device.
-
i2c.h::i2c_ti2c¶ I2C device that sensor is connected to.
-
uint8_t
addr¶ I2C address of this particular sensor.
-