
课程设计(论文)基于单片机和DS18B20的数字温度计.doc
18页摘要温度测量在物理实验、医疗卫生、食品生产等领域,尤其在热学试验中,有特别重要的意义随着人们生活水平的不断提高,,人们对温度计的要求越来越高,传统的温度计功能单一、精度低,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从单片机技术入手,一切向着数字化控制,智能化控制方向发展数字温度计(Digital Thermometer)简称D温度是许多监控系统中的一个重要参数TM,它是采用数字化测量技术,把连续的温度值转换成不连续、离散的数字形式并加以显示的仪表采用单片机控制的数字温度计,由于精度高、可扩展性强、集成方便、抗干扰能力强,得到了广泛的应用本设计以单片机和温度传感器为核心,设计数字温度计实现对温度的采集、监视和报警在温度采集的实现中,使用了AT89C51单片机和温度传感器DS18B20,温度监视部分利用动态驱动技术,以单片机驱动4位LED数码管温度测量范围-55℃~+125℃,通过按键设置上下限报警温度,并用4位共阳极LED数码管以串口传送数据,实现温度显示,能准确达到设计要求正文还介绍了AT89C51和集成温度传感器DS18B20 目录1 设计的意义及主要功能 31.1 意义 31.2 主要功能 32 总体方案设计 42.1 方案比较 42.2 方案论证 52.3 方案选择 53 硬件电路设计 63.1 元器件的选择 63.2 电路原理图 63.3 特殊元器件的介绍 63.3.1 AT89C51介绍 63.3.2 DS18B20介绍 94 总结 135 参考文献 13附录 141 设计的意义及主要功能1.1 意义随着人们生活水平的不断提高,数字化无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,一切向着数字化控制,智能化控制方向发展。
数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用温度计是常用的热工仪表,常用于工业现场作为过程的温度测量在工业生产过程中,不仅需要了解当前温度读数,而且还希望能了解过程中的温度变化情况随着工业现代化的发展,对温度测量仪表的要求越来越高,而数字温度表具有结构简单,抗干扰能力强,功耗小,可靠性高,速度快等特点,更加适合于工业过程中以及科学试验中对温度进行测量的要求近年来,数字温度表广泛应用在各个领域,它与模拟式温度表相比较,归纳起来有如下特点⑴准确度高,⑵测量范围宽、灵敏度高,⑶测量速度快,⑷使用方便、操作简单,⑸抗干扰能力强,⑹自动化程度高,⑺读数清晰、直观方便数字温度计的高速发展,使它已成为实现测量自动化、提高工作效率不可缺少的仪表数字化是当前计量仪器仪表发展的主要方向之一而高准确度数字温度计的出现,又使温度计进入了精密标准测量领域与此相适应,测量的可靠性、准确性显得越来越重要1.2 主要功能①实时显示环境温度4位数码管显示,3位整数,1位小数②温度范围:-55~125℃③上电运行,实时显示温度。
2 总体方案设计 通过查阅大量相关技术资料,并在老师的指导下,使我对整个电路系统有了一个比较全面的了解本设计主要是实现模拟量温度的采集,然后使其转换为数字量,最后将其转化为直观的十进制示值2.1 方案比较对同一种目的的实现,可以用不同的方案,下面就着重介绍以下两种方案对同一目的的实现方法并比较两种方案的优劣方案一原理框图如图1所示:热电偶ADC译码显示电路电源图1 方案一的原理框图方案一的原理简述:该方案的各部分电源均由总电源供电,温度传感器为热电偶,热电偶的热端感受被测物体温度t,产生相应的热电势热电势与热端温度成单值函数关系,用模数转换器ADC将热电势转化为数字量,按照热电势与温度的函数关系将该数字量转换为对应温度值,经译码显示电路显示在数码管上,从而实现数字温度计的功能方案二原理框图如图2所示:显示电路电源数字温度传感器AT89C51图2 方案二的原理框图方案二的原理简述:该方案的各部分电源均由总电源供电,51单片机作为中央处理器及控制核心,控制数字温度计采集温度,数字温度传感器在采集到温度后直接输出数字量,传给单片机进行处理,单片机将传回的二进制数据处理后转换为相应温度,由译码显示电路以十进制形式显示在数码管上。
方案三原理框图如图3所示:数字温度传感器控制电路译码显示电路传感器图3 方案三的原理框图方案二的原理简述:该方案的各部分电源均由总电源供电,由模拟及数字元器件组成的控制电路作为核心,控制数字温度计采集温度,数字温度传感器在采集到温度后直接输出数字量,传给控制电路进行处理,控制电路将传回的二进制数据处理后转换为相应温度,由译码显示电路以十进制形式显示在数码管上2.2 方案论证以上三种方案都是可行的,第一种方案的优点是由纯硬件电路构成,不涉及软件编程,但是由于热电势与温度之间的函数关系较复杂,利用硬件电路完成其转化较复杂,设计该电路难度较大且电路将比较庞大第二种方案的难点主要是单片机程序编制,但其硬件电路相对简单,借助于微控制器的强大功能可使设计周期缩短,测量精度高,且易于扩展功能,增强了电路对各种工作要求的适应性第三种方案的优点是由纯硬件电路构成,不涉及软件编程,但是数字式温度传感器的工作涉及复杂的时序,用硬件电路实现将十分复杂,电路设计难度大且电路庞大2.3 方案选择考虑到自己先前自学过单片机知识,对单片机有一定了解以及电路的灵活性和适用性,经过上面三个方案的分析,第二个方案的可行性高,所以我选择第二个方案作为设计方案。
在第二个方案中,数字式温度传感器和单片机起着主导作用,单片机控制传感器测温并将其传回的数据进行处理,通过改变程序,可改变测量精度及电路的功能,可实现设计要求3 硬件电路设计3.1 元器件的选择在本设计中主要采取较为熟悉的AT89C51单片机和由美国DALLAS半导体公司研制的DS18B20温度传感器以及4位LED数码管3.2 电路原理图电路原理图如图4所示 图43.3 特殊元器件的介绍3.3.1 AT89C51介绍AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机单片机的可擦除只读存储器可以反复擦除100次该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。
AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案1.主要特性:a) 与MCS-51 兼容 b) 4K字节可编程闪烁存储器 c) 寿命:1000写/擦循环d) 数据保留时间:10年e) 全静态工作:0Hz-24Hzf) 三级程序存储器锁定g) 128*8位内部RAMh) 32可编程I/O线i) 两个16位定时器/计数器j) 5个中断源 k) 可编程串行通道l) 低功耗的闲置和掉电模式m) 片内振荡器和时钟电路 2.管脚说明: VCC:供电电压 GND:接地 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流当P1口的管脚第一次写1时,被定义为高阻输入P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位在FLASH编程时,P0 口作为原码输入口,当FLASH进行校验时,P0输出原码,此时P0外部必须被拉高 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4个TTL门电流P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入并因此作为输入时,P2口的管脚被外部拉低,将输出电流这是由于内部上拉的缘故P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容P2口在FLASH编程和校验时接收高八位地址信号和控制信号 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流当P3口写入“1”后,它们被内部上拉为高电平,并用作输入作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故P3口也可作为AT89C51的一些特殊功能口,如下所示: 图5 AT89C51管脚图P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:复位输入当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节在FLASH编程期间,此引脚用于输入编程脉冲在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6因此它可用作对外部输出的脉冲或用于定时目的然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲如想禁止ALE的输出可在SFR区中的8EH地址上置0此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用另外,该引脚被略微拉高如果微处理器在外部执行状态ALE禁止,置位无效 PSEN:外部程序存储器的选通信号在由外部程序存储器取指期间,每个机器周期两次PSEN有效但在访问外部数据存储器时,这两次有效的PSEN信号将不出现 EA/VPP:当EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器注意加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,此间内部程序存储器在FLASH编程期间,此引脚也用于施加12V编程电源(VPP) XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡器的输出3.振荡器特性: XTAL1和XTAL2分别为反向放大器的输入和输出。
