1、常见的NTC类型
(1)3435;
(2)3950;
2.常用的温度转换方法
(1)查表法;
(2)表达式直接转换;
3、NTC电阻转温算法
因为NTC温度和阻值不是线性的,所以需要算法来计算NTC电阻值对应的温度。
#include <math.h> static const float Rp = 10000.0f; //10K static const float T2 = (273.15f 25.0f);//T2 static const float Bx = 3435.0f;//B static const float Ka = 273.15f; /** * NTC 热敏电阻温度计算公式 * Rt?= R *EXP(B*(1/T1-1/T2)) * 这里T1和T指K度即开尔文温度,K度=273.15(绝对温度) 摄氏度;其中T2=(273.15 25) * Rt 是热敏电阻T1温度下的阻值; * R是热敏电阻T2常温下标称阻值; * B值是热敏电阻的重要参数; * EXP是e的n次方; */ static float get_temperature(u16_t res) { float Rt; float temp; Rt = res; //like this R=5000, T2=273.15 25,B=3470, RT=5000*EXP(3470*(1/T1-1/(273.15 25)), temp = Rt/Rp; temp = log(temp);//ln(Rt/Rp) temp /= Bx;//ln(Rt/Rp)/B temp = (1/T2); temp = 1/(temp); temp -= Ka; return temp; }