西安文理学院物理与机械电子工程学院课程设计任务书目录摘要 (3)1 引言 (3)1.1课题背景 (3)1.2研究内容和意义 (5)2 芯片介绍 (5)2.1 DS18B20概述 (5)2.1.1 DS18B20封装形式及引脚功能 (6)2.1.2 DS18B20内部结构 (6)2.1.3 DS18B20供电方式 (9)2.1.4 DS18B20的测温原理 (10)2.1.5 DS18B20的ROM命令 (11)2.2 AT89C52概述 (13)2.2.1单片机AT89C52介绍 (13)2.2.2功能特性概述 (13)3 系统硬件设计 (13)3.1 单片机最小系统的设计 (13)3.2 温度采集电路的设计 (14)3.3 LED显示报警电路的设计 (15)4 系统软件设计...................................................15 4.1 流程图........................................................15 4.2 温度报警器程序.................................................16 4.3 总电路图..................................................... 19 5总结 (20)摘要随着时代的进步和发展,温度的测试已经影响到我们的生活、工作、科研、各个领域,已经成为了一种非常重要的事情,因此设计一个温度测试的系统势在必行。
本文主要介绍了一个基于AT89C52单片机的数字温度报警器系统。
详细描述了利用数字温度传感器DS18B20开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各部分的电路也一一进行了介绍,该系统可以方便的实现温度的采集和报警,并可以根据需要任意上下限报警温度,它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合于我们日常生活和工、农业生产中的温度测量,也可以当做温度处理模块潜入其他系统中,作为其他主系统的辅助扩展。
DS18B20与AT89C52结合实现最简温度报警系统,该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,有广泛的应用前景。
关键词:单片机;温度检测;AT89C52;DS18B20;1 引言1.1课题背景温度是工业对象中主要的被控参数之一,如冶金、机械、食品、化工各类工业生产中,广泛使用的各种加热炉、热处理炉、反应炉等,对工件的温度处理要求严格控制。
随着科学技术的发展,要求温度测量的范围向深度和广度发展,以满足工业生产和科学技术的要求。
基于AT89C51单片机提高了系统的可移植性、扩展性,利于现代测控、自动化、电气技术等专业实训要求。
以单片机为核心设计的温度报警器,具有安全可靠、操作简单方便、智能控制等优点。
温度对于工业生产如此重要,由此推进了温度传感器的发展。
温度传感器主要经过了三个发展阶段[1]:(1)模拟集成温度传感器。
该传感器是采用硅半导体集成工艺制成,因此亦称硅传感器或单片集成温度传感器。
此种传感器具有功能单一(仅测量温度)、测温误差小、价格低、响应速度快、传输距离远、体积小、微功耗等特点,适合远距离测温、控温,不需要进行非线性校准,外围电路简单。
它是目前在国内外应用最为普遍的一种集成传感器,典型产品有AD590、AD592、TMP17、LM135等;(2)模拟集成温度控制器。
模拟集成温度控制器主要包括温控开关、可编程温度控制器,典型产品有LM56、AD22105和MAX6509。
某些增强型集成温度控制器(例如TC652/653)中还包含了A/D转换器以及固化好的程序,这与智能温度传感器有某些相似之处。
但它自成系统,工作时并不受微处理器的控制,这是二者的主要区别;(3)智能温度传感器 (亦称数字温度传感器)。
智能温度传感器是在20世纪90年代中期问世的,其内部都包含温度传感器、A/D转换器、信号处理器、存储器(或寄存器)和接口电路。
有的产品还带多路选择器、中央控制器(CPU)、随机存取存储器(RAM)和只读存储器(ROM)。
智能温度传感器的特点是能输出温度数据及相关的温度控制量,适配各种微控制器(MCU);并且它是在硬件的基础上通过软件来实现测试功能的,其智能化程度也取决于软件的开发水平。
现代信息技术的三大基础是信息采集[2](即传感器技术)、信息传输(通信技术)和信息处理(计算机技术)。
传感器属于信息技术的前沿尖端产品,尤其是温度传感器被广泛用于工农业生产、科学研究和生活等领域,数量高居各种传感器之首。
数字温度传感器可以直接将被检测的温度信息以数字化形式输出,与传统的模拟式温度传感器相比,具有测量精度高、功耗低、稳定性好、外围接口电路简单特点。
而单片机微处理器越来越丰富的外围功能模块,更加方便了数字式温度传感器输出信号的处理。
智能温度传感器内部都包含温度传感器、A/D转化器、信号处理器、存储器(或寄存器)和接口电路。
有的产品还带多路选择器、中央处理器(CPU)、随机存取存储器(RAM)和只读存储器(ROM)。
并且它是在硬件的基础上通过软件来实现测试功能的,其智能化程度也取决于软件的开发水平。
进入21世纪后,智能温度传感器正朝着高精度、多功能、总线标准化、高可靠性及安全性、开发虚拟传感器和网络传感器、研制单片机测温系统等的方向发展。
数字化温度传感器可以直接将温度量以数字脉冲信号形式输出,具有测量精度高、抗干扰能力强、传输距离远、外围接口电路简单等诸多优点。
同时数字温度传感器还可直接与微处理器进行接口,大大方便了传感器输出信号的处理.数字单总线温度传感器是目前最新的测温器件,它集温度测量,A/D转换于一体,具有单总线结构,数字量输出,直接与微机接口等优点。
1.2研究内容和意义本温度报警器以AT89C51单片机为控制核心,由一数字温度传感器DS18B20测量被控温度,结合7段LED以及驱动LED的74LS245组合而成。
当被测量值超出预设范围则发出警报,且精度高,适用于大多数工业生产以及教育教学领域。
温度是一种最基本的环境参数,它是与人类的生活、工作关系最密切的物理量,也是各门学科与工程研究设计中经常遇到和必须精确测量的物理量。
从工业炉温、环境气温到人体温度;从空间、海洋到家用电器,各个技术领域都离不开测温和控温。
因此,研究温度的测量和控制方法具有重要的意义。
2 芯片介绍2.1 DS18B20概述DS18B20是Dallas公司继DS1820后推出的一种改进型智能数字温度传感器,与传统的热敏电阻相比,只需一根线就能直接读出被测温度值,并可根据实际需求来编程实现9~12位数字值的读数方式[3]。
2.1.1 DS18B20封装形式及引脚功能图2.1 DS18B20封装形式和引脚功能如图2.1所示,DS18B20的外形如一只三极管,引脚名称及作用如下:GND:接地端。
DQ:数据输入/输出脚,与TTL电平兼容。
VDD:可接电源,也可接地。
因为每只DS18B20都可以设置成两种供电方式,即数据总线供电方式和外部供电方式。
采用数据总线供电方式时VDD接地,可以节省一根传输线,但完成数据测量的时间较长;采用外部供电方式则VDD接+5V,多用一根导线,但测量速度较快。
2.1.2 DS18B20内部结构图2.2中出示了DS18B20 的主要内部部件,下面对DS18B20内部部分进行简单的描述[4]:(1)64位ROM。
64位ROM是由厂家使用激光刻录的一个64位二进制ROM代码,是该芯片的标识号,如表2.1所示:第1个8位表示产品分类编号,DS18B20的分类号为10H;接着为48位序列号。
它是一个大于281*1012的十进制编码,作为该芯片的唯一标示代码;最后8位为前56位的CRC循环冗余校验码,由于每个芯片的64位ROM代码不同,因此在单总线上能够并接多个DS18B20进行多点温度实习检验。
(2)温度传感器。
温度传感器是DS18B20的核心部分,该功能部件可完成对温度的测量通过软件编程可将-55~125℃范围内的温度值按9位、10位、11位、12位的分辨率进行量化,以上的分辨率都包括一个符号位,因此对应的温度量化值分别为0.5℃、0.25℃、0.125℃、0.0625℃,即最高分辨率为0.0625℃。
芯片出厂时默认为12位的转换精度。
当接收到温度转换命令(44H)后,开始转换,转换完成后的温度以16位带符号扩展的的二进制补码形式表示,存储在高速缓存器RAM的第0,1字节中,二进制数的前5位是符号位。
如果测得的温度大于0,这5位为0,只要将测得的数值乘上0.0625即可得到实际温度;如果温度小于0,这5位为1,测得的数值需要取反加1再乘上0.0625即可得到实际温度。
(3)高速缓存器。
DS18B20内部的高速缓存器包括一个高速暂存器RAM和一个非易失性可电擦除的EEPROM。
非易失性可点擦除EEPROM用来存放高温触发器TH、低温触发器TL和配置寄存器中的信息。
(4)配置寄存器。
配置寄存器的内容用于确定温度值的数字转换率。
DS18B20工作是按此寄存器的分辨率将温度转换为相应精度的数值,它是高速缓存器的第5个字节,该字节定义如表2.2所示:TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式,在DS18B20出厂时该位被设置为0,用户不要去改动;R1和R0用来设置分辨率;其余5位均固定为1。
DS18B20分辨率的设置如表2.3所示:DS18B20依靠一个单线端口通讯。
在单线端口条件下,必须先建立ROM 操作协议,才能进行存储器和控制操作。
因此,控制器必须首先提供下面5个ROM 操作命令之一:1)读ROM;2)匹配ROM;3)搜索ROM;4)跳过ROM;5)报警搜索。
这些命令对每个器件的激光ROM 部分进行操作,在单线总线上挂有多个器件时,可以区分出单个器件,同时可以向总线控制器指明有多少器件或是什么型号的器件。
成功执行完一条ROM 操作序列后,即可进行存储器和控制操作,控制器可以提供 6 条存储器和控制操作指令中的任一条。
一条控制操作命令指示DS18B20完成一次温度测量。
测量结果放在DS18B20的暂存器里,用一条读暂存器内容的存储器操作命令可以把暂存器中数据读出。
温度报警触发器TH 和TL 各由一个EEPROM字节构成。
如果没有对DS18B20使用报警搜索命令,这些寄存器可以做为一般用途的用户存储器使用。
可以用一条存储器操作命令对TH 和TL 进行写入,对这些寄存器的读出需要通过暂存器。
所有数据都是以最低有效位在前的方式进行读写。