diff --git a/lib/MeasureUnit/Adc.cpp b/lib/MeasureUnit/Adc.cpp new file mode 100644 index 0000000..c39a2f6 --- /dev/null +++ b/lib/MeasureUnit/Adc.cpp @@ -0,0 +1,21 @@ +#include "Adc.h" + +Adc::Adc() : _lastChannel(0), _adcSetting(0,0) +{ + //Serial.println("Adc constructor called"); +} + +Adc::~Adc() +{ + +} + +void Adc::setAdcSetting(AdcSetting adcSetting) +{ + _adcSetting = adcSetting; +} + +AdcSetting Adc::getAdcSetting() +{ + return _adcSetting; +} diff --git a/lib/MeasureUnit/Adc.h b/lib/MeasureUnit/Adc.h new file mode 100644 index 0000000..43eb0ca --- /dev/null +++ b/lib/MeasureUnit/Adc.h @@ -0,0 +1,26 @@ +#ifndef ADC_H +#define ADC_H +#include "AdcSetting.h" + +class Adc +{ + public: + virtual ~Adc() = 0; + + virtual void begin() = 0; + virtual int32_t sampleValue(int16_t channel, boolean sgl = true) = 0; + virtual int32_t sampleValue() = 0; + virtual double sampleVoltage(int16_t channel, boolean sgl = true) = 0; + virtual double sampleVoltage() = 0; + + void setAdcSetting(AdcSetting adcSetting); + AdcSetting getAdcSetting(); + protected: + Adc(); + + int16_t _lastChannel; + AdcSetting _adcSetting; + private: +}; + +#endif //ADC_H