Grelet Jacques
/
Ni-MH_V3
example code using statis library for temperature measurement with LM35 and LM335
temperatureSensor.cpp
- Committer:
- greletj
- Date:
- 2012-11-20
- Revision:
- 2:9517837c642d
- Parent:
- 1:5821fa15d6ca
- Child:
- 3:0e06300940cd
File content as of revision 2:9517837c642d:
/*-------------------------------------------------------------------------*/ /* temperatureSensor class */ /*-------------------------------------------------------------------------*/ /* Ni-MH charger project US191 IRD */ /*-------------------------------------------------------------------------*/ /* Nov 2012 | J Grelet */ /*-------------------------------------------------------------------------*/ #include "temperatureSensor.h" #include "nimh.h" // constructor // _pin(pin) means pass pin to the AnalogIn constructor temperatureSensor::temperatureSensor(PinName pin, float delay, float convertion, MODE mode, size_t size) : _pin(pin), _filter(mode, size) { _convertion = convertion; _scaleFactor = 100; // Attach a function to be called by the Ticker, specifiying the interval delay in seconds. _ticker.attach(this, &temperatureSensor::toDo, delay); } // destructor temperatureSensor::~temperatureSensor() { } // toDo method call by ticker // remove 3.3 // read AnalogIn voltage and convert into temperature void temperatureSensor::toDo(void) { _temperature = (_pin * _scaleFactor * 3.3 ) - _convertion; _filter.put( _temperature ); } // return temperature measurement // add filtering with media and ring buffer float temperatureSensor::read(void) { return _filter.read(); }