/** * Anatole SCHRAMM-HENRY * Tim THUREL * Projet température de la ruche GROUPE 3 * Driver pour le LTC2439 fonctionne avec l'ESP8266 * Méthodes asynchrones disponibles * * Tout droits réservés */ #ifndef LTC2439_H #define LTC2439_H #include #include class LTC2439 { public: LTC2439(uint8_t csPin, uint8_t sdoPin, double vref = 3300); void setVref(double vref); double getVref(){return _vref;}; int32_t sampleValue(uint8_t channel, boolean sgl = true); int32_t sampleValue(); double sampleVoltage(uint8_t channel, boolean sgl = true); double sampleVoltage(); //Methodes asynchrones void startAsyncSample(uint8_t channel, boolean sgl = true, boolean force = false); boolean asyncResultAvailable(); double convertToVoltage(int32_t value); int32_t getAsyncValue(); protected: private: uint8_t _csPin, _statusPin; boolean _sampleTriggered; double _vref; //Delta de tension de la plage : vref-gnd en mV uint8_t _adcRes; double _quantum; const uint8_t _channelMap[16]; const SPISettings _SPIsettings; }; #endif //LTC2439_H