ADS101x/111x ADC device driver¶
I2C Analog-to-Digital Converter device driver.
This driver works with ADS1013-5 and ADS1113-5.
This driver provides [S]ensor [A]ctuator [U]ber [L]ayer capabilities.
-
enum
@102
¶ - ADS101X_OK
= 0
- everything was fine
- ADS101X_NOI2C
= -1
- I2C communication failed.
- ADS101X_NODEV
= -2
- no ADS101X device found on the bus
- ADS101X_NODATA
= -3
- no data available
- ADS101X_OK
-
struct ads101x_params
ads101x_params_t
¶ ADS101x/111x params.
-
struct ads101x_alert_params
ads101x_alert_params_t
¶ ADS101x/111x alert params.
-
void(*
ads101x_alert_cb_t
()¶ ADS101x/111x alert callback.
-
struct ads101x_alert
ads101x_alert_t
¶ ADS101x/111x alert device descriptor.
-
int
ads101x_init
(ads101x.h::ads101x_t
* dev, constads101x.h::ads101x_params_t
* params)¶ Initialize an ADS101x/111x ADC device (ADC only)
Parameters
dev: device descriptor params: device configuration Return values
- zero on successful initialization, non zero on error
-
int
ads101x_alert_init
(ads101x.h::ads101x_alert_t
* dev, constads101x.h::ads101x_alert_params_t
* params)¶ Initialize an ADS101x/111x alert device.
Parameters
dev: device descriptor params: device configuration Return values
- zero on successful initialization, non zero on error
-
int
ads101x_set_mux_gain
(constads101x.h::ads101x_t
* dev, uint8_t mux_gain)¶ Set mux and gain.
Mux settings have no effect on ADS1013-4 and ADS1113-4. Gain settings have no effect on ADS1013 and ADS1113.
Parameters
dev: device descriptor mux_gain: mux and gain boolean values Return values
- zero on successful read, non zero on error
-
int
ads101x_read_raw
(constads101x.h::ads101x_t
* dev, int16_t * raw)¶ Read a raw ADC value.
Parameters
dev: device descriptor raw: read value Return values
- zero on successful read, non zero on error
-
int
ads101x_enable_alert
(ads101x.h::ads101x_alert_t
* dev,ads101x.h::ads101x_alert_cb_t
cb, void * arg)¶ Enable alert interrupt.
Alert settings have no effect on ADS1013 and ADS1113.
Parameters
dev: device descriptor cb: callback called when the alert fires arg: callback argument Return values
- zero on success, non zero on error
-
int
ads101x_set_alert_parameters
(constads101x.h::ads101x_alert_t
* dev, int16_t low_limit, int16_t high_limit)¶ Set the alert parameters.
Alert settings have no effect on ADS1013 and ADS1113.
Parameters
dev: device descriptor low_limit: alert low limit high_limit: alert high limit Return values
- zero on success, non zero on error
-
ADS101X_I2C_ADDRESS
¶ ADS101x/111x default address.
1
(0x48)
Address pin tied to: GND (0x48), Vcc (0x49), SDA (0x50), SCL (0x51)
-
struct
ads101x_params
¶ ADS101x/111x params.
-
i2c.h::i2c_t
i2c
¶ i2c device
-
uint8_t
addr
¶ i2c address
-
uint8_t
mux_gain
¶ Mux and gain boolean settings.
-
-
struct
ads101x_alert_params
¶ ADS101x/111x alert params.
-
i2c.h::i2c_t
i2c
¶ i2c device
-
uint8_t
addr
¶ i2c address
-
gpio.h::gpio_t
alert_pin
¶ alert pin (GPIO_UNDEF if not connected)
-
int16_t
low_limit
¶ alert low value
-
int16_t
high_limit
¶ alert high value
-
-
struct
ads101x
¶ ADS101x/111x device descriptor.
-
ads101x.h::ads101x_params_t
params
¶ device driver configuration
-
-
struct
ads101x_alert
¶ ADS101x/111x alert device descriptor.
-
ads101x.h::ads101x_alert_params_t
params
¶ device driver configuration
-
ads101x.h::ads101x_alert_cb_t
cb
¶ alert callback
-
void *
arg
¶ alert callback param
-