37#ifndef DRIVER_ADS1110_H
38#define DRIVER_ADS1110_H
144#define DRIVER_ADS1110_LINK_INIT(HANDLE, STRUCTURE) memset(HANDLE, 0, sizeof(STRUCTURE))
152#define DRIVER_ADS1110_LINK_IIC_INIT(HANDLE, FUC) (HANDLE)->iic_init = FUC
160#define DRIVER_ADS1110_LINK_IIC_DEINIT(HANDLE, FUC) (HANDLE)->iic_deinit = FUC
168#define DRIVER_ADS1110_LINK_IIC_READ_COMMAND(HANDLE, FUC) (HANDLE)->iic_read_cmd = FUC
176#define DRIVER_ADS1110_LINK_IIC_WRITE_COMMAND(HANDLE, FUC) (HANDLE)->iic_write_cmd = FUC
184#define DRIVER_ADS1110_LINK_DELAY_MS(HANDLE, FUC) (HANDLE)->delay_ms = FUC
192#define DRIVER_ADS1110_LINK_DEBUG_PRINT(HANDLE, FUC) (HANDLE)->debug_print = FUC
uint8_t ads1110_set_rate(ads1110_handle_t *handle, ads1110_rate_t rate)
set the sample rate
uint8_t ads1110_single_read(ads1110_handle_t *handle, int16_t *raw, float *v)
read data from the chip once
uint8_t ads1110_deinit(ads1110_handle_t *handle)
close the chip
uint8_t ads1110_set_addr_pin(ads1110_handle_t *handle, ads1110_address_t addr_pin)
set the iic address pin
uint8_t ads1110_info(ads1110_info_t *info)
get chip's information
struct ads1110_handle_s ads1110_handle_t
ads1110 handle structure definition
uint8_t ads1110_stop_continuous_read(ads1110_handle_t *handle)
stop the chip reading
ads1110_rate_t
ads1110 rate enumeration definition
uint8_t ads1110_get_gain(ads1110_handle_t *handle, ads1110_gain_t *gain)
get adc gain
uint8_t ads1110_get_rate(ads1110_handle_t *handle, ads1110_rate_t *rate)
get the sample rate
uint8_t ads1110_init(ads1110_handle_t *handle)
initialize the chip
uint8_t ads1110_continuous_read(ads1110_handle_t *handle, int16_t *raw, float *v)
read data from the chip continuously
ads1110_address_t
ads1110 address enumeration definition
uint8_t ads1110_get_addr_pin(ads1110_handle_t *handle, ads1110_address_t *addr_pin)
get the iic address pin
struct ads1110_info_s ads1110_info_t
ads1110 information structure definition
uint8_t ads1110_set_gain(ads1110_handle_t *handle, ads1110_gain_t gain)
set adc gain
uint8_t ads1110_start_continuous_read(ads1110_handle_t *handle)
start the chip reading
ads1110_gain_t
ads1110 gain enumeration definition
uint8_t ads1110_get_reg(ads1110_handle_t *handle, uint8_t *buf, uint16_t len)
get the chip register
uint8_t ads1110_set_reg(ads1110_handle_t *handle, uint8_t *buf, uint16_t len)
set the chip register
ads1110 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)
ads1110 information structure definition
float supply_voltage_max_v
char manufacturer_name[32]
float supply_voltage_min_v