微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 模拟电路设计 > DS1620引脚图及测温原理

DS1620引脚图及测温原理

时间:11-09 来源:互联网 点击:

DS1620是DALLAS半导体公司的温度传感器家庭成员之一,是新型数字式温度传感器。其测温范围宽(-55℃~+125℃),感应能力精确,不需A/D转换电路,直接将温度值转换成数字量。其外围电路简单,可以不需要PC机和单片机等的支持,独立进行工作。可广泛应用于温度控制,温度测量,工作系统及任何热敏感系统中。

DS1620为8引脚DIP或SOIC封装,其引脚符号及功能见表1。

1

引脚号符 号功 能
1DQ3线数据输入/输出端
2CLK/CONV3线时钟输入端/独立工作端
3RST3线箝位输入端(低电平复位)
4GND接地端
5THIGH高温触发端
6TLOW低温触发端
7TCOM高温/低温结合触发端
8VDD+5V 电源端



测温原理

DS1620通过专有的片载温度测量技术进行温度测量。其测温原理如图1所示。

计数器和温度寄存器预选设置为-55℃的基值,计数器对流经低温系数振荡器的脉冲进行计数,计数脉冲的周期由高温系数振荡器决定。如果计数器在高温系数振荡器发出结束信号之前到达0,则温度寄存器开始增值,表示温度值在-55℃之上。同时,计数器预设一个数值,此数值由非线性补偿累加器决定,以补偿振荡器测温过程中的抛物线性,即非线性。然后计数器重复进行计数。如此循环,最终温度寄存器中的数字量即为所测温度值。

温度值的换算在DS1620内部进行,分辨率为0.5℃。DS1620的温度值以1/2℃LSB(最低有效位)表示,9位数据格式如下:(T=25.5℃)

000110011

非线性补偿累加器的作用为补偿测温振荡器的非线性误差,改变每℃增值的计数器数值。若得知计数器中的数值和在补测温度下每℃的计数(非线性补偿累加器中的值),便可以实现高分辨率温度测量。

DS1620在正常测温情况下分辨率为0.5℃,根据其测温工作原理,可以将其分辨率提高到0.1℃~0.05℃,以适应需要精确温度值的工业测量及控制系统。

大多数Dallas数字式温度传感器都能通过将最低有效位(LSB)置位或清零,以确保0.5℃的分辨率。传感的误差范围由不同数值的LSB数字化决定。例如25℃至26℃之间的温度值可参考表2。

表2

实际温度值置位/清零LSB直接读数
25清零25
25.1清零25
25.2清零25
25.3置位25.5
25.4置位25.5
25.5置位25.5
25.6置位25.5
25.7置位25.5
25.8清零26
25.9清零26
26清零26

由表可知,对于每一次读入的温度值,都以1/2LSB为单位进行四舍五入计算,DS1620的1/2LSB为0.25℃,它在进行高分辨率测量的计算中必须考虑在内。

DS1620读进的原始数据为9位,对所读数据减去最低有效位,使可得到高分辨率值。计算过程为:将读入的温度可存器二进制数字量转化成带符号整数,即temp read;然后对DS1620执行特定的控制指令,使可得到保留在计数器中的数值,即转换停止后的计数器保留数cont remain:以另一特定控制指令或指令集读出非线性累加器中的数值,即在此温度下每℃的计数值count per degree,得知这些参数后,通过如下公式:

实际值=temp read 1/2LSB+(count per degree count remain)/count per degree

实际的精确温度值便可计算出来#e#

实际的精确温度值便可计算出来,分辨率高达0.1℃。

DS1620的工作方式及状态检测位由设置寄存器决定,在进行温度转换之前首先要对其初始化,由PC机或单片机设定设置寄存器的相应位。设置寄存器格式如下:

DONETHFTLF***CPUISHOT

DONE(D7)位为"1"时表示温度转换已经完成,为"0"时表示转换正在进行。注意此位只在单次转换方式时有效。

THF(D6)TLF(D5)位分别为高于高温极限值或低于低温极限值时置位。

ISHOT(D0)位为"1"时表示以温度单次转换方式运行,为"0"时表示连续方式。

CPU(D1)位为"1"时表示DS1620以3线串行接口与PC机或单片机通信,为"0"时表示独立工作方式。

*表示无关位。

在DS1620以CPU方式工作时,PC机或单片机的程序流程如图2所示。

在实现过程中注意下面问题:

1.实现过程中必须用到两条特殊指令:读计数器指令(A0H)和装载计数器指令(41H),这两条指令在DS1620使用手册上查不到。前一条指令的作用为读出计数器中的数值,后一条指令的作用为将非线性累加器中的数值装入计数器。

2.在数据传输过程中,DQ线上数据的传输顺序为LSB(最低有效位)在先,MSB(最高有效位)在最后。例如设置寄存器状态字节的传送,第一位ISHOT位(D0),其次为CPU位(D1),依次下去,第八位为DONE位(D7)。

3.从DQ引脚上读取数据时,设置寄存器的状态为8位数据,而温度数据为9位,这在编程时要加以区别。可以编读取8位数据和9位数据的子函数分别调用,也可只编读取9位的程序,但在判断设置寄存器状态时只取前8位。

4.注意在常温下,每次写入DS1620存储器都需要近10ms,所以在写指令之后不能立即对DS1620进行读写访问,通常加

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top