106#define DRIVER_AHT40_LINK_INIT(HANDLE, STRUCTURE) memset(HANDLE, 0, sizeof(STRUCTURE))
114#define DRIVER_AHT40_LINK_IIC_INIT(HANDLE, FUC) (HANDLE)->iic_init = FUC
122#define DRIVER_AHT40_LINK_IIC_DEINIT(HANDLE, FUC) (HANDLE)->iic_deinit = FUC
130#define DRIVER_AHT40_LINK_IIC_READ_CMD(HANDLE, FUC) (HANDLE)->iic_read_cmd = FUC
138#define DRIVER_AHT40_LINK_IIC_WRITE_CMD(HANDLE, FUC) (HANDLE)->iic_write_cmd = FUC
146#define DRIVER_AHT40_LINK_DELAY_MS(HANDLE, FUC) (HANDLE)->delay_ms = FUC
154#define DRIVER_AHT40_LINK_DEBUG_PRINT(HANDLE, FUC) (HANDLE)->debug_print = FUC
219 uint16_t *humidity_raw,
float *humidity_s);
struct aht40_info_s aht40_info_t
aht40 information structure definition
uint8_t aht40_init(aht40_handle_t *handle)
initialize the chip
uint8_t aht40_read_humidity(aht40_handle_t *handle, uint16_t *humidity_raw, float *humidity_s)
read the humidity data
uint8_t aht40_info(aht40_info_t *info)
get chip's information
struct aht40_handle_s aht40_handle_t
aht40 handle structure definition
uint8_t aht40_read_temperature(aht40_handle_t *handle, uint16_t *temperature_raw, float *temperature_s)
read the temperature
uint8_t aht40_read_temperature_humidity(aht40_handle_t *handle, uint16_t *temperature_raw, float *temperature_s, uint16_t *humidity_raw, float *humidity_s)
read the temperature and humidity data
uint8_t aht40_deinit(aht40_handle_t *handle)
close the chip
uint8_t aht40_get_reg(aht40_handle_t *handle, uint8_t *buf, uint16_t len)
get the chip register
uint8_t aht40_set_reg(aht40_handle_t *handle, uint8_t *buf, uint16_t len)
set the chip register
aht40 handle structure definition
void(* delay_ms)(uint32_t ms)
void(* debug_print)(const char *const fmt,...)
uint8_t(* iic_init)(void)
uint8_t(* iic_read_cmd)(uint8_t addr, uint8_t *buf, uint16_t len)
uint8_t(* iic_deinit)(void)
uint8_t(* iic_write_cmd)(uint8_t addr, uint8_t *buf, uint16_t len)
aht40 information structure definition
float supply_voltage_max_v
char manufacturer_name[32]
float supply_voltage_min_v