用 NTC 热敏电阻做温度采集
V1.1 - Dec 8, 2005
中文版
19, Innovation First Road • Science Park • Hsin-Chu • Taiwan 300 • R.O.C.
Tel: 886-3-578-6005 Fax: 886-3-578-4418 E-mail: mcu@sunplus.com.cn
http://www.sunplusmcu.com http://mcu.sunplus.com
用 NTC 热敏电阻做采用温度
版权声明
凌阳科技股份有限公司保留对此文件修改之权利且不另行通知。凌阳科技股份有限公司所提供之信息相信为正确且
可靠之信息,但并不保证本文件中绝无错误。请于向凌阳科技股份有限公司提出订单前,自行确定所使用之相关技
术文件及规格为最新之版本。若因贵公司使用本公司之文件或产品,而涉及第三人之专利或著作权等智能财产权之
应用及配合时,则应由贵公司负责取得同意及授权,本公司仅单纯贩售产品,上述关于同意及授权,非属本公司应
为保证之责任。又未经凌阳科技股份有限公司之正式书面许可,本公司之所有产品不得使用于医疗器材,维持生命
系统及飞航等相关设备。
© Sunplus Technology Co., Ltd.
PAGE 2
V1.1 – Dec. 8, 2005
用 NTC 热敏电阻做采用温度
目录
页
1 系统概要.............................................................................................................................................5
系统说明 ............................................................................................................................5
热敏电阻器.........................................................................................................................5
1.2.1 电阻-温度关系.................................................................................................5
数值处理 ............................................................................................................................7
线性插值 ............................................................................................................................8
2 软件说明...........................................................................................................................................10
软件说明 ..........................................................................................................................10
档案构成 ..........................................................................................................................10
子程序说明.......................................................................................................................10
3 程序范例...........................................................................................................................................12
DEMO程序 .........................................................................................................................12
硬件原理图.......................................................................................................................16
4 MCU使用资源...................................................................................................................................17
MCU硬件使用资源说明....................................................................................................17
5 参考文献...........................................................................................................................................18
2.1
2.2
2.3
3.1
3.2
1.1
1.2
1.3
1.4
4.1
© Sunplus Technology Co., Ltd.
PAGE 3
V1.1 – Dec. 8, 2005
用 NTC 热敏电阻做采用温度
修订记录
版本
1.0
1.1
日期
2004/01/27
2005/12/08
编写及修订者
编写及修订说明
初版
错误校正
© Sunplus Technology Co., Ltd.
PAGE 4
V1.1 – Dec. 8, 2005
1 系统概要
用 NTC 热敏电阻做采用温度
1.1 系统说明
本应用例实现NTC 热敏电阻器对温度的测量。热敏电阻器把温度的变化转换为电阻阻值的变化,
再应用相应的测量电路把阻值的变化转换为电压的变化;SPMC75F2413A 内建 8 路 ADC 可以把模
拟的电压值转换为数字信号,对数值信号进行处理可以得到相应的温度值。
1.2 热敏电阻器
热敏电阻有电阻值随温度升高而升高的正温度系数(Positive Temperature Coefficient
简 称 PTC ) 热 敏 电 阻 和 电 阻 值 随 温 度 升 高 而 降 低 的 负 温 度 系 数 (Negative Temperature
Coefficient 简称 NTC)热敏电阻。
NTC 热敏电阻器,是一种以过渡金属氧化物为主要原材料,采用电子陶瓷工艺制成的热敏半导
体陶瓷组件。这种组件的电阻值随温度升高而降低,利用这一特性可制成测温、温度补偿和控温组
件,又可以制成功率型组件,抑制电路的浪涌电流。
电阻温度特性可以近似地用下式来表示:
R = R *EXP[B*(1/T-1/T )]
T
N
N
式中:RT、RN分别表示NTC在温度T(K)和额定额定温度TN (K)下的电阻值,单位Ω,T、TN 为温度,
单位K(TN(k)=273.15+TN(℃))。B,称作B值,NTC热敏电阻特定的材料常数(Beta)。由于B值
同样是随温度而变化的,因此NTC热敏电阻的实际特性,只能粗略地用指数关系来描述,所以这种
方法只能以一定的精度来描述额定温度或电阻值附近的有限的范围。
但是在实际应用中,要求有比较精确的 R-T 曲线。要用比较复杂的方法(例如用 the
steinhart-Hart 方程),或者用表格的形式来给定电阻/温度关系。
应用例选用 NTC 热敏电阻器 CWF2-502F3950,基于精确的 R-T 曲线,来对温度进行精确的
测量。
1.2.1 电阻-温度关系
如表 1-1 所示,NTC 热敏电阻器 CWF2-502F3950 各温度点的电阻值,即电阻-温度关系表。
从 提 供 的 电 阻 - 温 度 关 系 表 中 可 以 看 出 NTC 热 敏 电 阻 器 CWF2-502F3950 的 测 温 范 围 为
[-55℃,125℃],其电阻值的变化范围为[250062Ω,242.64Ω]。
温度(℃)
-55
-52
-49
-46
-43
电阻值(Ω)
250062
213575
181580
153933
130293
表 1-1 电阻-温度关系表
温度(℃)
-54
-51
-48
-45
-42
电阻值(Ω)
237404
202412
171895
145638
123231
温度(℃)
-53
-50
-47
-44
-41
电阻值(Ω)
225239
191750
162684
137753
116550
© Sunplus Technology Co., Ltd.
PAGE 5
V1.1 – Dec. 8, 2005
用 NTC 热敏电阻做采用温度
-40
-37
-34
-31
-28
-25
-22
-19
-16
-13
-10
-7
-4
-1
2
5
8
11
14
17
20
23
26
29
32
35
38
41
44
47
50
53
56
59
62
65
68
71
74
77
80
83
86
110232
93295.5
79043.9
67074.7
57030.2
48600
41519
35563.5
30545.8
26309.5
22724.6
19683.6
17097.1
14891.5
13005.4
11388.2
9997.74
8799
7762.78
6864.7
6084.32
5404.53
4810.9
4291.28
3835.38
3434.5
3081.22
2769.24
2493.17
2248.38
2032
1837.4
1664.85
1510.74
1372.87
1249.32
1138.44
1038.78
949.06
868.18
795.17
729.17
669.44
-39
-36
-33
-30
-27
-24
-21
-18
-15
-12
-9
-6
-3
0
3
6
9
12
15
18
21
24
27
30
33
36
39
42
45
48
51
54
57
60
63
66
69
72
75
78
81
84
87
104261
88267.4
74819.2
63529
54054.7
46101.6
39418.8
33795
29053.8
25047.9
21655.3
18774.9
16332.9
14230
12438.7
10901.3
9578.41
8436.83
7449.16
6592.4
5847.31
5197.72
4630.01
4132.69
3696.03
3311.78
2972.92
2673.47
2408.3
2173.04
1963.92
1777.68
1611.54
1463.08
1330.18
1211.03
1104.04
1007.82
921.17
843.02
772.43
708.6
650.8
-38
-35
-32
-29
-26
-23
-20
-17
-14
-11
-8
-5
-2
1
4
7
10
13
16
19
22
25
28
31
34
37
40
43
46
49
52
55
58
61
64
67
70
73
76
79
82
85
88
98621.7
83521.8
70833.9
60184.6
51247.9
43744
37435.9
32124.4
27643.3
23854.2
20642.7
17913.6
15588.4
13601.9
11900.1
10438.3
9181
8091.73
7150.04
6332.49
5620.89
5000
4456.93
3980.83
3562.49
3194.1
2869
2581.5
2326.76
2100.6
1899.44
1720.2
1560.2
1417.14
1289.02
1174.09
1070.83
977.93
894.22
818.69
750.44
688.7
632.76
© Sunplus Technology Co., Ltd.
PAGE 6
V1.1 – Dec. 8, 2005
615.3
566.17
521.53
480.94
443.97
410.26
379.5
351.4
325.69
302.16
280.59
260.8
242.64
90
93
96
99
102
105
108
111
114
117
120
123
89
92
95
98
101
104
107
110
113
116
119
122
125
用 NTC 热敏电阻做采用温度
598.39
550.81
507.57
468.23
432.38
399.69
369.85
342.57
317.62
294.76
273.8
254.58
91
94
97
100
103
106
109
112
115
118
121
124
582.02
535.94
494.05
453.3
421.15
389.44
360.48
334.01
309.77
287.57
267.21
248.52
1.3 数值处理
通过表 1-1 电阻-温度关系表可以很直观的看到电阻的变化范围从 242.64Ω到 250062Ω,
在-55℃的时候其表现出的电阻值是 125℃时所表现的电阻值的 1030 倍,这幺大的变化范围也为
ADC 测量带来了困难。测量电路如图 1-1 所示。
Vref
Rv
NTC
1
2
Rm
1
2
Vadc
C1
103
如图 1-1 测量电路
如上图所示 NTC 热敏电阻 Rv 和测量电阻 Rm(精密电阻)组成一个简单的串联分压电路,参考电压
VCC_Ref 经过分压可以得到一个电压值随着温度值变化而变化的数值,这个电压的大小将反映出
NTC 电阻的大小,从而也就是相应温度值的反映。
通过欧姆定律可以得到输出电压值 Vadc 和 NTC 电阻值的一个关系表达式:
Vadc = Vref*Rm/(Rv+Rm) (1)
那幺接下来的数据处理将基于式(1)展开:SPMC75F2413A 的 ADC 为 10-Bit 的精度,其参考电
© Sunplus Technology Co., Ltd.
PAGE 7
V1.1 – Dec. 8, 2005
用 NTC 热敏电阻做采用温度
压为 5V,因此这里可以选择 Vref=5V。各温度点对应的 ADC 转换后的数字量可以计算。
Dadc = 1024*Vadc/5V (2)
式(1)、(2)结合可以得到:
Dadc = 1024*Rm/(Rv+Rm) (3)
如 果 这 里 取 测 量 电 阻 Rm 选 择 4.7K Ω , 那 幺 可 以 计 算 出 在 -55℃ 时 所 对 应 的 Dadc =
1024*1000/(250062+1000) = 4;在 125℃时所对应的 Dadc = 1024*1000/(242.64+1000)
= 824。根据这样的对应关系对数据进行预处理,得到如下处理结果如表 1-2 所示:
表 1-2
tatic const Int16 NTCTAB2[181] =
{
19,20,21,22,23,24,26,27,29,30,32,34,
36,38,40,42,44,47,49,52,55,57,61,64,
67,71,74,78,82,86,90,95,99,104,109,114,
120,150,156,161,168,172,180,187,194,201,208,215,
222,230,238,247,255,264,272,280,291,302,310,319,
328,338,347,357,367,376,384,395,405,414,424,434,
444,453,464,474,484,494,502,512,522,531,540,551,
560,569,579,586,595,604,613,624,633,642,650,658,
666,673,680,688,696,704,712,719,726,733,741,749,
755,760,767,774,780,785,791,798,804,811,816,821,
827,832,837,842,847,851,856,862,868,873,856,860,
864,868,872,876,879,883,886,890,893,896,899,902,
905,908,911,914,917,919,922,924,927,929,931,934,
936,938,940,942,944,946,947,949,951,953,954,956,
958,959,961,962,964,965,966,968,969,970,971,973,
974
};//4.7K
当然这也是应用例中所需要的一个很重要的转换表,这一部分是事先制作好的表格,将为接下来的
处理提供参考依据。
测量电阻 Rm 的选取是有一定的规律的,在实际的应用中不一定都需要测量全程温度,可以估
算出大致的温度范围。本着提高测量精度的宗旨:如果是应用在测量低温的系统中建议 Rm 选择较大
的电阻(10KΩ),如果在测量较高温的系统中建议 Rm 选择较小的电阻(1KΩ)等。
1.4 线性插值
在 ADC 进行数据采集的过程中不可能每一个数值都在整温度所对应的 ADC 数值上,所以如果在
两个数据的中间一段就要对其进行进一步的精确定位。这样就必须知道采集到的数据在表 1-2 中的
具体位置,因此要对数据表进行搜索、查找。线性表的查找(也称检索),可以有比较常见的顺序查
找、折半查找及分块查找等方法,分析线性表 1-2 可以得到折半查找的算法是比较高效的。
Eg.如果 ADC 采样的数值为 Dadc = 360,即 357