#include "sensorTemperatura.h" #define MAXADC 1024 #define VMAX 5 #define ZEROC 273 sensorTemperatura::sensorTemperatura(int pinoADC) { _pino = pinoADC; // para RTC 1K 102 calibra(1000, 1000, 3636, 298); } float sensorTemperatura::tempK() { float adc = analogRead(_pino); float V = (VMAX*adc/MAXADC); float R = (VMAX-V)*_REXT/V; float T = _B/log(R/(_R0*exp(-_B/_T0))); return T; } float sensorTemperatura::tempC() { return tempK()-ZEROC; } void sensorTemperatura::calibra(float REXT, float R0, float B, float T0) { _REXT = REXT; _R0 = R0; _B = B; _T0 = T0; }