bh1900nux: Driver for BH1900NUX temperature sensor
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
- enum bh1900nux_alert_polarity_t
ALERT pin polarity.
Values:
- enumerator BH1900NUX_ALERT_LOW
ALERT active low (default)
- enumerator BH1900NUX_ALERT_HIGH
ALERT active high.
- enum bh1900nux_mode_t
Device operating mode.
Values:
- enumerator BH1900NUX_MODE_CONTINUOUS
Continuous measurement mode (default)
- enumerator BH1900NUX_MODE_SHUTDOWN
Shutdown mode.
- 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)
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.