Grelet Jacques
/
Ni-MH_V3
example code using statis library for temperature measurement with LM35 and LM335
temperatureSensor.cpp
- Committer:
- greletj
- Date:
- 2012-11-22
- Revision:
- 4:ffc39af07ade
- Parent:
- 3:0e06300940cd
- Child:
- 5:0b3569945178
File content as of revision 4:ffc39af07ade:
/*-------------------------------------------------------------------------*/ /* 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 scaleTemp, MODE mode, size_t size) : _pin(pin), _filter(mode, size) { _scaleTemp = scaleTemp; _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 * 3.3 * _scaleFactor) - _scaleTemp; _filter.put( _temperature ); } // return temperature measurement // add filtering with media and ring buffer float temperatureSensor::read(void) { //return _filter.statis(); _filter.calcule(); return _filter.med.valeur; }