单线数字温度传感器DS18B20的原理与应用
扫描二维码
随时随地手机看文章
摘 要:介绍单线数字温度传感器ds1820的特性及工作原理,给出了ds1820与89c51单片机接口的应用实例,以及由ds1820组成温度检测系统的方法,并给出了对ds1820进行各种操作的软件流程图。关键词:单线制(1-wire)时隙a/d变换 美国dallas公司生产的单线数字温度传感器ds1820,可把温度信号直接转换成串行数字信号供微机处理。由于每片ds1820含有唯一的硅串行数?所以在一条总线上可挂接任意多个ds1820芯片。从ds1820读出的信息或写入ds1820的信息,仅需要一根口线(单线接口)。读写及温度变换功率来源于数据总线,总线本身也可以向所挂接的ds1820供电,而无需额外电源。ds1820提供九位温度读数,构成多点温度检测系统而无需任何外围硬件。本文给出了ds1820与89c51单片机接口的应用实例和ds1820组成温度检测系统的方法,并给出了对ds1820进行各种操作的软件流程图。1ds1820的特性·单线接口:仅需一根口线与mcu连接·无需外围元件·由总线提供电源·测温范围为-55℃~75℃,精度为0.5℃·九位温度读数·a/d变换时间为200ms·用户自设定温度报警上下限,其值是非易失性的·报警搜索命令可识别哪片ds1820超温度限2ds1820引脚及功能ds1820的引脚见图1(pr35封装)。 gnd:地;dq:数据输入/输出脚(单线接口,可作寄生供电);vdd:电源电压。3ds1820的工作原理ds1820的内部结构如图2所示。 由图2可知,ds1820由三个主要数字器件组成:①64bit闪速rom;②温度传感器;③非易失性温度报警触发器th和tl。64bit闪速rom的结构如下: 它既可寄生供电也可由外部5v电源供电。在寄生供电情况下,当总线为高电平时,ds1820从总线上获得能量并储存在内部电容上?当总线为低电平时,由电容向ds1820供电。ds1820的测温原理:内部计数器对一个受温度影响的振荡器的脉冲计数,低温时振荡器的脉冲可以通过门电路,而当到达某一设置高温时振荡器的脉冲无法通过门电路。计数器设置为-55℃时的值,如果计数器到达0之前,门电路未关闭,则温度寄存器的值将增加,这表示当前温度高于-55℃。同时,计数器复位在当前温度值上,电路对振荡器的温度系数进行补偿,计数器重新开始计数直到回零。如果门电路仍然未关闭,则重复以上过程。温度表示值为9bit,高位为符号位,其结构如下: 820的使用,多采用单片机实现数据采集。处理时,将ds1820信号线与单片机一位口线相连,单片机可挂接多片ds1820,从而实现多点温度检测系统。系统对ds1820的操作以rom命令和存储器命令形式出现。3.1rom命令代码及其含义·readrom命令代码[33h]:如果只有一片ds1820,可用此命令读出其序列号,若在线ds1820多于一个,将发生冲突。·matchrom命令代码[55h]:多个ds1820在线时,可用此命令匹配一个给定序列号的ds1820,此后的命令就针对该ds1820。·skiprom命令代码[cch]:此命令执行后的存储器操作将针对在线的所有ds1820。·searchrdh命令代码[f0h]:用以读出在线的ds1820的序列号。·alarmsearch命令代码[ech]:当温度值高于th或低于tl中的数值时,此命令可以读出