梁工 发表于 2024-4-28 11:15:37

liushiming82 发表于 2024-4-28 10:50
谢谢,梁工,这个例程中怎么没有视频中那个温度查询表呀

等等,难道说,你要的是那个EXCEL表?


liushiming82 发表于 2024-4-28 11:25:05

梁工 发表于 2024-4-28 11:15
等等,难道说,你要的是那个EXCEL表?

是的,谢谢梁工

晓飛飛 发表于 2024-4-28 19:50:15

liushiming82 发表于 2024-4-28 09:56
线性插补怎么理解,能否举例说明?谢谢,能否提供一个温度表格吗?

由于NTC厂家给出的阻值温度曲线表是按照1℃间隔的,实际应用中1℃的分辨率显然不能满足精确测温和显示的需求,所以有了“线性插补”的方法
虽然NTC的温度曲线是非线性的,但是为了快速解算带小数的温度值,可以把两个整数温度(比如25℃和26℃)对应的阻值按照线性函数平均到1℃的范围内,
分成10份就是0.1℃分辨率,这样虽然有一定非线性误差,但这种误差在要求不高的场合可以忽略不计,这种插值的方法就叫做线性插补。


lhj 发表于 2024-5-2 10:59:08

学习了,昨天也是遇到这样的问题

110 发表于 2024-5-15 17:06:56

支持楼主,学习了!谢谢

wxdjs 发表于 2024-9-3 09:53:27

梁工 发表于 2022-12-13 20:40
如果想减少计算时间,可以二分法查表,先建一个ADC读数表格,1度C一个数据,0.1度用线性插补。查表法不需要 ...

一般都是不用浮点数计算,不知道比如stc8h,44mhz时,计算一个这个温度公式大概需要多久的时间?是十位us级别的吗?

梁工 发表于 2024-9-3 11:12:47

本帖最后由 梁工 于 2024-9-3 11:20 编辑

wxdjs 发表于 2024-9-3 09:53
一般都是不用浮点数计算,不知道比如stc8h,44mhz时,计算一个这个温度公式大概需要多久的时间?是十位us ...
position = 1.0 / (1.0 / 298.15 + log((float)j / (4096.0-(float)j)) / 3950) - 273.15;      // 169us@44MHz,计算当前位置(温度^C), t = 1/(1/298.15+ln(ADC/(4096-ADC))/B) -273.15,单位^C.
上述公式浮点计算量:加减法3次,除法4次,对数1次。其中除法和对数都比较耗时间的。
测温ADC频率不高,所以浮点计算的时间也可以接受的。
要更快的计算速度,可以使用AI8051U带浮点库的32位内核,跑40MHz,计算时间为26.8us,为STC8H同频下的1/7。
页: 1 [2]
查看完整版本: 关于开天斧 热敏电阻NTC / ADC测温 案例的疑惑