使用NTC热敏电阻进行测温。
自己画个图并按照图片进行接线。我用的是25°C下为10k的NTC热敏电阻。
ADC测的是NTC两端,对得到ADC的值进行计算可以得到NTC两端的电压和NTC当前的阻值,然后在网上找到计算温度的公式并且把之前计算得出的值代入就可以得到测量到的温度。
adcr = Fliter_middle();
printf("%d\r\n",adcr);
adc = (float)(adcr)/4096*3.3;//NTC的电压
R = (adc/(3.3-adc))*10000;//NTC的电阻
printf("阻值:%3f\r\n",R);
temp = (1.0 / ((1.0 / 3950) * log(R / 10000) + (1.0 / (25 + 273.15))) - 273.15);
printf("温度:%f\r\n",temp);
需要注意的是adc,R,temp用了浮点型。