将串口RX连接到下载器TX
串口TX连接到下载器RX
需要配置串口。SAADC,和NTC
串口打印温度值
SAADC将采样值转化为电压值
NTC是热敏电阻,电阻值和温度值之间的转换
实验用1SDNT1005X103F3950FTF
热敏电阻B值为3950
//电压换算成温度
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;
}
千万注意:有log函数,需要写math.h头文件
float temp_data(int saadc_val)
{
float Rt=0;
float Rp=10000;
float T2=273.15+25;
float Bx=3950;
float Ka=273.15;
float vol=0;
vol=(float)(saadc_val * 3.6 /1024);
Rt=(3.3-vol)*10000/vol;
temp = 1 / (1 / T2 + log(Rt / Rp) / Bx) - Ka + 0.5; // 注意:这里的 +0.5 可能是个调试值,通常不需要
return temp;
}
调用nt saadc_val,返回 temp;必须用float。不能用void
在main函数里面调用temp:temp = temp_data(saadc_val);