NTC测温,非查表,适用于所有

NTC检测温度
--- 模块功能:NTC电阻测温
-- @author DZQ
-- @module ntc
-- @license MIT
-- @copyright openLuat
-- @release 2018.03.14

module(...,package.seeall)

--[[NTC:负温度系数热敏电阻,在温度越高时电阻值越低,应用电路NTC电阻与GND相连,标准25°下的阻值与VCC相连分压
NTC电阻温度计算公式:Rt = Rp*EXP(Bx*(1/T1-1/T2))
T1,T2 :单位都是开尔文温度
Rt :是热敏电阻在T1温度下的阻值
Rp : 是热敏电阻在T2常温下的标准阻值
EXP:e的n次方
Bx :热敏电阻的重要参数
T2是已知的即:标准温度下的标准阻值(Rp)的开尔文温度值(273.15+25.0)
T1就是欲求的温度(开尔文标):T1 = 1/(ln(Rt/R)/B+1/T2)
]]
--[[
功能:获得温度
参数:Vadc:获取的ADC值,Rp:NTC自身的阻值(25°C),Bx:热敏电阻的重要参数
返回值:温度值
例子(10KΩ B:3380):getTemp(522,10000,3380)]]
function getTemp(Vadc,Rp,Bx)
    local Rt = (Vadc*Rp)/(1024-Vadc)--计算电阻值
    local temp=(1/(math.log(Rt/Rp)/Bx+(1/298.15)))-273.15
    return temp - temp %0.01--精确到小数点后2位
end
  • 发表于 2019-08-19 17:32
  • 阅读 ( 2084 )

你可能感兴趣的文章

相关问题

2 条评论

请先 登录 后评论
不写代码的码农
丁小泉ZJ

7 篇文章

作家榜 »

  1. 技术销售Delectate 43 文章
  2. 陈夏 26 文章
  3. 国梁 24 文章
  4. miuser 21 文章
  5. 晨旭 20 文章
  6. 朱天华 19 文章
  7. 金艺 19 文章
  8. 杨奉武 18 文章