开篇前的科普:
https://blog.csdn.net/yangyang_1024/article/details/80563522
https://blog.csdn.net/y_hanxiao/article/details/73845086
借鉴上面2位的解释,关于采集的电压,这里有必要说一下,因为我用的是ADS1115芯片,所以采集电压的公式和上面2位博主说的不一样。
我的代码是:
//(Result[0]*256+Result[1])是ADS读出来的数,套上公式,volta[0]出来的就是V单位。
volta[0]=(float) (((Result[0]*256+Result[1])/3.2768)*6.144)/10000;
Rt[0]=(10000*volta[0])/(3.3-volta[0]);
//Rt[0]表示阻值,是用上面2位博主的解析算出来的。
temp[0]=(1/(log(Rt[0]/Rp)/Bx+(1/T2)))-273.15+0.5;
//temp[0]就是热敏电阻采集到的温度。
注意:我选用的B值是3950,25℃时阻值10K。电路与上面博主的不一样,我是串了一颗10K的电阻,具体解析不懂,反正感觉自己的热敏电阻是10K的,应该保持2端平衡。
最后,留下QQ以便帮助更多的人:1252595878,QQ群:620210981