55 float temperature_low_deg,
float temperature_high_deg,
56 float humidity_low_percentage,
float humidity_high_percentage,
178 if (humidity_high_percentage - 1.0f < 0.0f)
250 for (i = 0; i < times; i++)
252 uint16_t temperature_raw;
254 uint16_t humidity_raw;
driver hdc302x interrupt test header file
uint8_t hdc302x_continuous_read(hdc302x_handle_t *handle, uint16_t *temperature_raw, float *temperature_s, uint16_t *humidity_raw, float *humidity_s)
continuous read
struct hdc302x_info_s hdc302x_info_t
hdc302x information structure definition
uint8_t hdc302x_set_addr(hdc302x_handle_t *handle, hdc302x_address_t addr)
set the iic address
uint8_t hdc302x_deinit(hdc302x_handle_t *handle)
close the chip
hdc302x_address_t
hdc302x address enumeration definition
uint8_t hdc302x_irq_handler(hdc302x_handle_t *handle)
irq handler
uint8_t hdc302x_set_low_power_mode(hdc302x_handle_t *handle, hdc302x_low_power_mode_t mode)
set low power mode
uint8_t hdc302x_set_auto_mode(hdc302x_handle_t *handle, hdc302x_auto_mode_t mode)
set auto mode
uint8_t hdc302x_alert_threshold_convert_to_register(hdc302x_handle_t *handle, float temperature_deg, float humidity_percentage, uint16_t *reg)
convert the alert threshold to the register raw data
uint8_t hdc302x_init(hdc302x_handle_t *handle)
initialize the chip
uint8_t hdc302x_write_clear_low_alert(hdc302x_handle_t *handle, uint16_t threshold)
write clear low alert
uint8_t hdc302x_clear_status(hdc302x_handle_t *handle)
clear status
uint8_t hdc302x_write_set_low_alert(hdc302x_handle_t *handle, uint16_t threshold)
write set low alert
uint8_t hdc302x_stop_continuous_read(hdc302x_handle_t *handle)
stop continuous read
struct hdc302x_handle_s hdc302x_handle_t
hdc302x handle structure definition
uint8_t hdc302x_info(hdc302x_info_t *info)
get chip's information
uint8_t hdc302x_start_continuous_read(hdc302x_handle_t *handle)
start continuous read
uint8_t hdc302x_write_clear_high_alert(hdc302x_handle_t *handle, uint16_t threshold)
write clear high alert
uint8_t hdc302x_write_set_high_alert(hdc302x_handle_t *handle, uint16_t threshold)
write set high alert
@ HDC302X_LOW_POWER_MODE_0
uint8_t hdc302x_interface_iic_write_address16(uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
interface iic bus write address16
void hdc302x_interface_debug_print(const char *const fmt,...)
interface print format data
uint8_t hdc302x_interface_iic_init(void)
interface iic bus init
uint8_t hdc302x_interface_iic_read_address16(uint8_t addr, uint16_t reg, uint8_t *buf, uint16_t len)
interface iic bus read address16
void hdc302x_interface_receive_callback(uint16_t type)
interface receive callback
void hdc302x_interface_delay_ms(uint32_t ms)
interface delay ms
uint8_t hdc302x_interface_iic_deinit(void)
interface iic bus deinit
#define DRIVER_HDC302X_LINK_DEBUG_PRINT(HANDLE, FUC)
link debug_print function
#define DRIVER_HDC302X_LINK_RECEIVE_CALLBACK(HANDLE, FUC)
link receive_callback function
#define DRIVER_HDC302X_LINK_DELAY_MS(HANDLE, FUC)
link delay_ms function
#define DRIVER_HDC302X_LINK_IIC_DEINIT(HANDLE, FUC)
link iic_deinit function
#define DRIVER_HDC302X_LINK_IIC_READ_ADDRESS16(HANDLE, FUC)
link iic_read_address16 function
#define DRIVER_HDC302X_LINK_INIT(HANDLE, STRUCTURE)
initialize hdc302x_handle_t structure
#define DRIVER_HDC302X_LINK_IIC_WRITE_ADDRESS16(HANDLE, FUC)
link iic_write_address16 function
#define DRIVER_HDC302X_LINK_IIC_INIT(HANDLE, FUC)
link iic_init function
uint8_t hdc302x_interrupt_test(hdc302x_address_t addr, float temperature_low_deg, float temperature_high_deg, float humidity_low_percentage, float humidity_high_percentage, uint32_t times)
interrupt test
float supply_voltage_max_v
char manufacturer_name[32]
float supply_voltage_min_v