14 int16_t conversion = 0;
26 uint8_t config_array[2]={
static_cast<uint8_t
>(config & 0xff), static_cast<uint8_t>(config >> 8) };
34 conversion = (int16_t) (data[0] << 8 | (data[1] & 0xFF));
35 conversion = conversion >> 4;
39 double input, inputLow, inputHigh, outputHigh, outputLow;
43 outputHigh = INT32_MAX;
44 outputLow = INT32_MIN;
48 raw = ((input - inputLow) / (inputHigh - inputLow)) * (outputHigh - outputLow) + outputLow;
err_t read(uint8_t address, uint8_t reg, uint8_t *buffer, size_t buffer_size)
Read data from I²C slave.
ADS101x(MUX compare, I2C_master *i2c_bus, uint8_t address=default_address)
ADS101x I²C 12 bit ADC with four channels.
MUX
Input multiplexer configuration (ADS1015 only) These bits configure the input multiplexer.
uint8_t const i2c_address
err_t write(uint8_t address, uint8_t reg, uint8_t *data, size_t data_size)
Write data to the I²C bus.
err_t set_reference(uint16_t mV)
set reference voltage, used to convert raw data to voltage.
err_t set_resolution(size_t bits)
Set resolution of ADC.
err_t _read(int32_t &raw) override
Read analogue value and convert to 32bit signed resolution.