Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: RF24 USBDevice mbed
Sensors/Thermistor.cpp
- Committer:
- pro100kot14
- Date:
- 2015-10-28
- Revision:
- 4:7cd67d988145
- Parent:
- Thermistor.cpp@ 2:ad2653bcf93f
- Child:
- 6:db4538895ae7
File content as of revision 4:7cd67d988145:
#include "Thermistor.h"
Thermistor::Thermistor(AnalogIn inputChanel, double a, double b, double c):input(inputChanel), error(0){
this->a = a;
this->b = b;
this->c = c;
}
double Thermistor::getTemperature(){
double temp;
double realV;
double resistance;
//3.3 - ADC maximum
realV = input.read()*3.3;
resistance = (10000 * 3.3) / realV - 10000;
//Considering the error
resistance -= error;
//Calculations using Steinhart–Hart equation
temp = log(resistance);
temp = 1/(a+b*temp+c*temp*temp*temp);
//Convert from Fahrenheit to Celsius
temp -= 273.15;
return temp;
}
void Thermistor::setError(double error){
this->error = error;
}
double Thermistor::getError(){
return error;
}
void Thermistor::setCoefficientA(double a){
this->a = a;
}
void Thermistor::setCoefficientB(double b){
this->b = b;
}
void Thermistor::setCoefficientC(double c){
this->c = c;
}
double Thermistor::getCoefficientA(){
return a;
}
double Thermistor::getCoefficientB(){
return b;
}
double Thermistor::getCoefficientC(){
return c;
}