我是靠谱客的博主 欢呼雪糕,最近开发中收集的这篇文章主要介绍c语言ntc程序,NTC热敏电阻温度计算以及C语言实现,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一:硬件设计

这里使用的是MF52-103热敏电阻,其中B为3950,它与10K电阻串联,由于热敏电阻随着温度的升高,电阻值降低,所以10K电阻两端的电压将上升。

f38fd9284b12e82c3634411c23725062.png

二:NTC热敏电阻的计算

NTC 热敏电阻温度计算公式:Rt = R EXP(B(1/T1-1/T2))

其中,T1和T2指的是K度,即开尔文温度。

Rt 是热敏电阻在T1温度下的阻值。

R是热敏电阻在T2常温下的标称阻值。100K的热敏电阻25℃的值为10K(即R=10K)。T2=(273.15+25)

EXP是e的n次方

B值是热敏电阻的重要参数

通过转换可以得到温度T1与电阻Rt的关系T1=1/(ln(Rt/R)/B+1/T2),这里可以将ln换算成log,即T1=1/(log(Rt/R)/B+1/T2)。

对应的摄氏温度t=T1-273.15,同时+0.5的误差矫正。

三:C程序设计

首先,我们只需要知道当前温度下热敏电阻的阻值就可以算出温度。

该硬件电路是一个简单的串联分压电路,所以通过欧姆定律就可以很容易求得当前温度下的热敏电阻的阻值。

下面是C实现的代码。

//电压换算成温度

void temp_data(void)

{

float Rt=0;

float Rp=10000;

float T2=273.15+25;

float Bx=3950;

float Ka=273.15;

float vol=0;

vol=(float)((Get_Adc_Average(ADC_Channel_5,10))*(3.3/4096));

Rt=(3.3-vol)*10000/vol;

temp=1/(1/T2+log(Rt/Rp)/Bx)-Ka+0.5;

}

最后

以上就是欢呼雪糕为你收集整理的c语言ntc程序,NTC热敏电阻温度计算以及C语言实现的全部内容,希望文章能够帮你解决c语言ntc程序,NTC热敏电阻温度计算以及C语言实现所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部