bh1900nux - Driver for BH1900NUX temperature sensor¶
- group bh1900nux
ESP-IDF driver for BH1900NUX temperature sensor.
Copyright (c) 2021 Ruslan V. Uss unclerus@gmail.com
BSD Licensed as described in the file LICENSE
Defines
-
BH1900NUX_I2C_ADDR_BASE¶
See full list in datasheet.
Enums
-
enum bh1900nux_fault_queue_t¶
Fault queue size.
Values:
-
enumerator BH1900NUX_FAULTS_1¶
1 fault to trigger ALERT pin
-
enumerator BH1900NUX_FAULTS_2¶
2 faults to trigger ALERT pin
-
enumerator BH1900NUX_FAULTS_4¶
4 faults to trigger ALERT pin
-
enumerator BH1900NUX_FAULTS_6¶
6 faults to trigger ALERT pin
-
enumerator BH1900NUX_FAULTS_1¶
-
enum bh1900nux_alert_polarity_t¶
ALERT pin polarity.
Values:
-
enumerator BH1900NUX_ALERT_LOW¶
ALERT active low (default)
-
enumerator BH1900NUX_ALERT_HIGH¶
ALERT active high.
-
enumerator BH1900NUX_ALERT_LOW¶
-
enum bh1900nux_mode_t¶
Device operating mode.
Values:
-
enumerator BH1900NUX_MODE_CONTINUOUS¶
Continuous measurement mode (default)
-
enumerator BH1900NUX_MODE_SHUTDOWN¶
Shutdown mode.
-
enumerator BH1900NUX_MODE_CONTINUOUS¶
-
enum bh1900nux_wait_time_t¶
Delay between measurements in continuous mode.
Values:
-
enumerator BH1900NUX_WT_0¶
186240 * 16 / 450000 ~ 6.622s (Fosc = 450kHz)
-
enumerator BH1900NUX_WT_1¶
186240 * 4 / 450000 ~ 1.655s (Fosc = 450kHz)
-
enumerator BH1900NUX_WT_2¶
186240 / 450000 ~ 0.414s (Fosc = 450kHz)
-
enumerator BH1900NUX_WT_3¶
93120 / 450000 ~ 0.207s (Fosc = 450kHz)
-
enumerator BH1900NUX_WT_0¶
Functions
-
esp_err_t bh1900nux_init_desc(bh1900nux_t *dev, uint8_t addr, i2c_port_t port, gpio_num_t sda_gpio, gpio_num_t scl_gpio)¶
Initialize device descriptor.
- Parameters
dev – Device descriptor
port – I2C port number
addr – I2C address
sda_gpio – SDA GPIO
scl_gpio – SCL GPIO
- Returns
ESP_OK
on success
-
esp_err_t bh1900nux_free_desc(bh1900nux_t *dev)¶
Free device descriptor.
- Parameters
dev – Device descriptor
- Returns
ESP_OK
on success
-
esp_err_t bh1900nux_reset(bh1900nux_t *dev)¶
Software reset.
- Parameters
dev – Device descriptor
- Returns
ESP_OK
on success
-
esp_err_t bh1900nux_set_mode(bh1900nux_t *dev, bh1900nux_mode_t mode)¶
Set device operating mode.
- Parameters
dev – Device descriptor
mode – Operating mode
- Returns
ESP_OK
on success
-
esp_err_t bh1900nux_get_config(bh1900nux_t *dev, bh1900nux_wait_time_t *wt, bh1900nux_fault_queue_t *fq, bh1900nux_alert_polarity_t *ap)¶
Read current device config.
- Parameters
dev – Device descriptor
wt – [out] Delay between measurements
fq – [out] Fault queue size
ap – [out] ALERT pin polarity
- Returns
ESP_OK
on success
-
esp_err_t bh1900nux_set_config(bh1900nux_t *dev, bh1900nux_wait_time_t wt, bh1900nux_fault_queue_t fq, bh1900nux_alert_polarity_t ap)¶
Configure device.
- Parameters
dev – Device descriptor
wt – Delay between measurements
fq – Fault queue size
ap – ALERT pin polarity
- Returns
ESP_OK
on success
-
esp_err_t bh1900nux_one_shot(bh1900nux_t *dev, float *temp)¶
Made a single-shot measurement.
Works only when device is in shutdown mode.
- Parameters
dev – Device descriptor
temp – [out] Temperature, deg.C
- Returns
ESP_OK
on success
-
esp_err_t bh1900nux_get_temperature(bh1900nux_t *dev, float *temp)¶
Read temperature register.
- Parameters
dev – Device descriptor
temp – [out] Temperature, deg.C
- Returns
ESP_OK
on success
-
esp_err_t bh1900nux_get_t_low(bh1900nux_t *dev, float *temp)¶
Read lower temperature limit register.
- Parameters
dev – Device descriptor
temp – [out] Temperature, deg.C
- Returns
ESP_OK
on success
-
esp_err_t bh1900nux_set_t_low(bh1900nux_t *dev, float temp)¶
Write lower temperature limit register.
- Parameters
dev – Device descriptor
temp – Temperature, deg.C
- Returns
ESP_OK
on success
-
esp_err_t bh1900nux_get_t_high(bh1900nux_t *dev, float *temp)¶
Read higher temperature limit register.
- Parameters
dev – Device descriptor
temp – [out] Temperature, deg.C
- Returns
ESP_OK
on success
-
esp_err_t bh1900nux_set_t_high(bh1900nux_t *dev, float temp)¶
Write higher temperature limit register.
- Parameters
dev – Device descriptor
temp – Temperature, deg.C
- Returns
ESP_OK
on success
-
struct bh1900nux_t¶
- #include <bh1900nux.h>
Device descriptor.
-
BH1900NUX_I2C_ADDR_BASE¶