M5Unit-ANADIG 0.1.0 git rev:3fbd370
Loading...
Searching...
No Matches
m5::unit::UnitADS1100 Class Reference

16-bit, self-calibrating, delta-sigma A/D converter More...

#include <unit_ADS1100.hpp>

Inheritance diagram for m5::unit::UnitADS1100:
m5::unit::UnitADS11XX

Classes

struct  config_t
 Settings for begin. More...
 

Public Member Functions

 UnitADS1100 (const float vdd=3.3f, const float factor=0.25f, const uint8_t addr=DEFAULT_ADDRESS)
 
virtual bool begin () override
 
virtual bool generalReset () override
 General reset.
 
Settings for begin
config_t config ()
 Gets the configration.
 
void config (const config_t &cfg)
 Set the configration.
 
Settings
bool readSamplingRate (ads1100::Sampling &rate)
 Read the Sampling rate.
 
bool writeSamplingRate (const ads1100::Sampling rate)
 Write the Sampling rate.
 
Periodic measurement
bool startPeriodicMeasurement (const ads1100::Sampling rate, const ads1100::PGA pga)
 Start periodic measurement.
 
bool startPeriodicMeasurement ()
 Start periodic measurement using current settings.
 
bool stopPeriodicMeasurement ()
 Stop periodic measurement.
 
Single shot measurement
bool measureSingleshot (ads1100::Data &data, const ads1100::Sampling rate, const ads1100::PGA pga)
 Measurement single shot.
 
bool measureSingleshot (ads1100::Data &data)
 Measurement single shot using current settings.
 
- Public Member Functions inherited from m5::unit::UnitADS11XX
 UnitADS11XX (const uint8_t addr=DEFAULT_ADDRESS)
 
virtual void update (const bool force=false) override
 
int16_t differentialValue () const
 Oldest measured differential value.
 
float differentialVoltage () const
 Oldest measured differential voltage(mV)
 
bool readPGA (ads11xx::PGA &pga)
 Read the PGA.
 
bool writePGA (const ads11xx::PGA pga)
 Write the PGA.
 

Protected Member Functions

bool start_periodic_measurement (const ads1100::Sampling rate, const ads1100::PGA pga)
 
virtual bool read_if_ready_in_periodic (uint8_t v[2]) override
 
virtual uint32_t get_interval (const uint8_t rate) override
 
- Protected Member Functions inherited from m5::unit::UnitADS11XX
bool start_periodic_measurement (const uint8_t cfg_value)
 
bool start_periodic_measurement ()
 
bool stop_periodic_measurement ()
 
bool measure_singleshot (ads11xx::Data &data, const uint8_t cfg_value)
 
bool measure_singleshot (ads11xx::Data &data)
 
bool read_config (uint8_t &v)
 
bool write_config (const uint8_t v)
 
bool read_measurement (uint8_t v[2])
 
bool is_data_ready ()
 
 M5_UNIT_COMPONENT_PERIODIC_MEASUREMENT_ADAPTER_HPP_BUILDER (UnitADS11XX, ads11xx::Data)
 

Additional Inherited Members

- Protected Attributes inherited from m5::unit::UnitADS11XX
std::unique_ptr< m5::container::CircularBuffer< ads11xx::Data > > _data {}
 
ads11xx::PGA _pga {}
 
uint8_t _rate {}
 
float _vdd {2.048f}
 
float _factor {1.0f}
 

Detailed Description

16-bit, self-calibrating, delta-sigma A/D converter

Member Function Documentation

◆ begin()

bool m5::unit::UnitADS1100::begin ( )
overridevirtual

Reimplemented from m5::unit::UnitADS11XX.

◆ generalReset()

bool m5::unit::UnitADS1100::generalReset ( )
overridevirtual

General reset.

Reset using I2C general call

Returns
True if successful
Warning
This is a reset by General command, the command is also sent to all devices with I2C connections

Reimplemented from m5::unit::UnitADS11XX.

◆ get_interval()

uint32_t m5::unit::UnitADS1100::get_interval ( const uint8_t rate)
overrideprotectedvirtual

Reimplemented from m5::unit::UnitADS11XX.

◆ measureSingleshot()

bool m5::unit::UnitADS1100::measureSingleshot ( ads1100::Data & data,
const ads1100::Sampling rate,
const ads1100::PGA pga )

Measurement single shot.

Parameters
[out]dataMeasuerd data
rateData sampling rate
pgaProgrammable Gain Amplifier
Returns
True if successful
Note
Blocked until the end of measurement
Blocking time depends on rate value
Warning
During periodic detection runs, an error is returned
Each setting is overwritten

◆ read_if_ready_in_periodic()

bool m5::unit::UnitADS1100::read_if_ready_in_periodic ( uint8_t v[2])
overrideprotectedvirtual

Reimplemented from m5::unit::UnitADS11XX.

◆ readSamplingRate()

bool m5::unit::UnitADS1100::readSamplingRate ( ads1100::Sampling & rate)

Read the Sampling rate.

Parameters
[out]rateSampling rate
Returns
True if successful

◆ startPeriodicMeasurement()

bool m5::unit::UnitADS1100::startPeriodicMeasurement ( const ads1100::Sampling rate,
const ads1100::PGA pga )
inline

Start periodic measurement.

Parameters
rateData sampling rate
pgaProgrammable Gain Amplifier
Returns
True if successful

◆ stopPeriodicMeasurement()

bool m5::unit::UnitADS1100::stopPeriodicMeasurement ( )
inline

Stop periodic measurement.

Returns
True if successful

◆ writeSamplingRate()

bool m5::unit::UnitADS1100::writeSamplingRate ( const ads1100::Sampling rate)

Write the Sampling rate.

Parameters
rateSampling rate
Returns
True if successful
Warning
During periodic detection runs, an error is returned