NTC温度计算

常见电路

NTC温度计算_第1张图片

                       图1  温度检测电路

 R_ntc为热敏电阻
3.3V 采用ADC的参考电压
分压电阻为10K
由电流相等得到
                                             VRntc/Rntc = 3.3V/(R1+Rntc)
 得到
                                             3.3V/VRntc =(R1+Rntc)/Rntc
  由AD采用就知道
  采用12bit的ADC采样计算
                                             4096/Vadc =(R1+Rntc)/Rntc

热敏电阻的温度与阻值关系

Rntc=R25*exp(B*(1/T1-1/T2))
         Rntc是热敏电阻的温变阻值
         R25 为温度为25°的电阻值  如图2
         B是需要查电阻的规格书 如图2
         T1为开尔文对应的摄氏温度275.15+电阻当前的温度
         T2为开尔文温度273.15+25

NTC温度计算_第2张图片

                                                       图2 热敏电阻规格书截图

这样计算理论电阻我们可以采用execl得到

NTC温度计算_第3张图片

                                              图3 计算电阻的公式

                                           NTC温度计算_第4张图片

                                                              图4 计算ADC的公式

NTC温度计算_第5张图片

                                                图5 采样ADC值计算温度公式

根据这些公式我们就能在程序中直接实现代码的编写

uint32_t lu32_Res = 0;
int16_t l16_Tm = 0;
float K = 273.15;
float T1 =298.15;
uint16_t B = 3380;
uint16_t R1 = 10000;  //分压电阻值
uint8_t i;
lu32_Res = (uint32_t)((lu16_adc_value*10000)/(4096-lu16_adc_value));
l16_Tm =(int16_t)(1/(1/T1+log(lu32_Res/R1)/B)-K);

 上述代码可以直接计算去NTC电阻的温度 
注意规格书上的B值以及R25值

 

你可能感兴趣的:(单片机,嵌入式硬件)