随着现代信息技术的飞速发展和传统工业改造的逐步实现,温度自动检测和显示系统在很多领域得到广泛应用。人们在温度检测的准确度、便捷、快速等方面有着越来越高的要求。而传统的温度传感器已经不能满足人们的需求,其渐渐被新型的温度传感器所代替。
本文设计并制作了一个简易温度计。本设计采用了单片机AT89S52和温度传感器DS18B20组成了温度自动测控系统,可根据实际需要任意设定温度值,并进行自动控制。在此设计中利用了AT89S52单片机作为主控制器件,DS18B20作为测温传感器通过LCD数码管串口传送数据,实现温度显示。通过DS18B20直接读取被测温度值,进行数据转换,能够设置温度上下限来设置报警温度。并且在到达报警温度后,系统会自动报警。
本文设计是从测温电路、主控电路、报警电路等几个方面来分析说明的。该器件可直接向单片机传输数字信号,便于单片机处理及控制。另外,该温度计还能直接采用测温器件测量温度。从而简化数据传输与处理过程。此设计的优点主要体现在可操作性强,结构基础简单,拥有很大的扩展空间等。
关键词:单片机;温度传感器;温度计;报警
I
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 Abstract
With the rapid development of modern information technology and the gradual transformation of traditional industries to achieve, automatic temperature detection and display systems are widely used in many fields. People in the temperature measurement accuracy, convenient, rapid, and has a growing demand.
This article was designed and produced a simple thermometer. This design uses a microcontroller AT89S52 and temperature sensor DS18B20 automatic temperature control system formed can be arbitrarily set the temperature according to the actual value and for automatic control. In this design using the AT89S52 microcontroller as the main control device, DS18B20 as an LCD digital temperature sensor tube through the serial transmission of data, to achieve temperature display. DS18B20 measured by direct reading temperature values, data conversion, to set the temperature to set the alarm on the lower temperature. And the temperature reaching the alarm, the system will automatically alarm.
This design is from the temperature measurement circuit, main control circuit, alarm circuit, and several other aspects of the note. The device can transmit digital signals directly to the microcontroller, easy to handle and control MCU. In addition, the thermometer temperature measurement device can be used directly to measure temperature. The major advantages of this design is reflected in operable structural basis is simple, lots of expansion space.
Keywords:AT89S52;DS18B20;thermometer;alarm
II
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 目 录
摘 要 ........................................................................................................................... I Abstract ....................................................................................................................... II 目 录 ........................................................................................................................ III 1 引言 ........................................................................................................................ 1
1.1 选题的背景 .................................................................................................... 1 1.2 选题的目的及意义 ........................................................................................ 2 1.3 论文结构 ........................................................................................................ 2 2 设计的整体方案 .................................................................................................... 3
2.1 设计的主要内容 ............................................................................................ 3 2.2 设计性能要求 ................................................................................................ 4 3 器件的选择 ............................................................................................................ 5
3.1 单片机的选择 ............................................................................................... 5
3.1.1 AT89S52的特点及选择原因 ............................................................... 5 3.1.2 AT89S52的工作模式及注意事项 ....................................................... 6 3.2 温度传感器的选择 ........................................................................................ 8
3.2.1 DS18B20的特点及选择原因 .............................................................. 8 3.2.2 DS18B20的测温原理 ....................................................................... 10 3.3 显示器的选择 .............................................................................................. 11 4 电路原理 .............................................................................................................. 13
4.1 晶振电路与复位电路 .................................................................................. 13 4.2 温度采集电路 .............................................................................................. 15 4.3 显示电路 ...................................................................................................... 16 4.4 报警系统 ...................................................................................................... 17 4.5 按键电路和指示灯电路 .............................................................................. 18 5 程序原理及系统流程图 ...................................................................................... 19
III
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 5.1 主程序 .......................................................................................................... 19 5.2 读出温度子程序 .......................................................................................... 20 5.3 温度数据显示子程序 .................................................................................. 22 5.4 设置温度上下限程序 .................................................................................. 23 5.4 计时时间设置 .............................................................................................. 25 6 软件仿真 .............................................................................................................. 27
6.1 软件介绍 ..................................................................................................... 27 6.2 仿真过程 ...................................................................................................... 27 7 实物的焊接与调试 .............................................................................................. 30 8 体会与展望 .......................................................................................................... 32
8.1 设计总结 ...................................................................................................... 32 8.2 设计前景 ...................................................................................................... 33 致 谢 ........................................................................................................................ 34 参考文献 .................................................................................................................... 35 附录A 系统总图 ...................................................................................................... 36
IV
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 1 引言
1.1 选题的背景
随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的。单片机在测控领域中具有十分广泛的应用,它既可以测量电信号,又可以测量温度湿度等非电信号。由单片机构成的温度检测、温度控制系统可广泛应用于很多领域。单片机在工业控制、尖端武器、通信设备、信息处理、家用电器等各测控领域的应用中独占鳌头。今天,我们的生活环境和工作环境有越来越多称之为单片机的小电脑在为我们服务。时下,家用电器和办公设备的智能化、遥控化、模糊控制化己成为世界潮流,而这些高性能无一不是靠单片机来实现的。
人民的生活与环境的温度息息相关,在工业生产过程中需要实时测量温度,在农业生产中也离不开温度的测量,因此研究温度的测量方法和装置具有重要的意义。
测量温度的关键是温度传感器,传感器属于信息技术的前沿尖端产品,尤其是温度传感器技术,在我国各领域已经引用的非常广泛,可以说是渗透到社会的每一个领域。
温度传感器的发展经历了三个发展阶段:传统的分立式温度传感器、模拟集成温度传感器、智能集成温度传感器。目前的智能温度传感器(亦称数字温度传感器)是在20世纪90年代中期问世的,它是微电子技术、计算机技术和自动测试技术(ATE)的结晶,特点是能输出温度数据及相关的温度控制量,适配各种微控制器(MCU)。社会的发展使人们对传感器的要求也越来越高,现在的温度传感器正在基于单片机的基础上从模拟式向数字式,从集成化向智能化、网络化的方向飞速发展,并朝着高精度、多功能、总线标准化、高可靠性及安全性、开发虚拟传感器和网络传感器、研制单片测温系统等高科技的方向迅速发展。
1
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 1.2 选题的目的及意义
随着现代信息技术的飞速发展和传统工业改造的逐步实现,能够独立工作的温度检测和显示系统应用于诸多领域。无论是在工业方面,农业方面或者是平民大众的生活当中,我们都能看到温度计的身影。
传统的温度检测以热敏电阻和AD590为温度敏感元件。热敏电阻的成本低,但需后续信号处理电路,而且可靠性相对较差。测温准确度低,检测系统也有一定的误差。因此,利用新型温度传感器取代旧式的温度传感器是必然的趋势,新型的温度传感器的优势越来越得到体现,越来越普及。单片机以其功能强、体积小、可靠性高、造价低和开发周期短等优点,成为自动化和各个测控领域中必不可少且广泛应用的器件,尤其在日常生活中也发挥越来越大的作用。
本设计的温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量和数量。其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用,测温传感器使用DS18B20,LCD以串口传送数据,实现温度显示,能准确达到以上要求。同时计时器的应用,使得温度计在使用时能够提示运行时间,设置报警时间等。
1.3 论文结构
第一章主要介绍了此设计的历史背景和存在的意义。第二章主要通过叙述设计的整体思路,即如何将单片机,温度传感器和显示屏结合在一起以达到设计目标。第三张主要叙述了选择AT89S52单片机和DS18B20的原因,还简要叙述了显示设备。第四章主要选取合适的引脚连接电路。第五章主要分析编程过程中,如何利用流程图来编写合适的程序;第六章通过仿真软件来模拟温度计,为实物的焊接做准备;第七章记录了在焊接过程中遇到的问题,和在焊接完后,遇到的问题和解决方法;第八章客观评价本设计存在的优缺点,及作品的发展。
2
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 2 设计的整体方案
2.1 设计的主要内容
根据系统的设计要求,当温度传感器DS18B20把所测得的温度发送到AT89S52单片机上,经AT89S52处理,将把温度在显示电路上显示,除了显示温度以外还可以设置一个报警温度,对所测温度进行监控。利用外接的键盘设置电路,对温度进行上下限设置。当温度高于或低于设定温度时,开始报警并启动相应程序。同时,系统还会显示温度计已经工作的时间,方便用户进行简单的人机对话。当开机后,计数器自动运行,开始记录已开机时间,在进行上下限操作时,计时的功能不关闭,持续计时。同时,能够设置报警温度,在到达报警时间后能够提示报警。
利用AT89S52芯片控制温度传感器DS18B20进行实时温度检测并显示,能够实现快速测量环境温度,并可以根据需要设定上下限报警温度。
系统框图如下图:
图1-1 系统框图
键盘设定 温度传感器 AT89S52 温度控制 显示设备 报警电路 选择DS18B20作为本系统的温度传感器,选择单片机AT89S52为测控系统的核心来完成数据采集、处理、显示、报警等功能。选用数字温度传感器DS18B20,输出信号全数字化。便于单片机处理及控制,省去传统的测温方法
3
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 的很多外围电路,省却了采样/保持电路、运放、数/模转换电路以及进行长距离传输时的串/并转换电路,简化了电路,缩短了系统的工作时间,降低了系统的硬件成本。
当LCD液晶显示器接收到来自AT89S52单片机传送来的温度信息后,分别显示了当前的温度,温度上限,温度下限和温度计运行时间。
2.2 设计性能要求
设计的主要功能和指标如下:
(1)提示开机,当按下开机键后,响起开机声。 (2)利用温度传感器(DS18B20)测量某一点环境温度。 (3)测量范围为-55℃~+110℃,精度为±0.5℃。 (4)用液晶进行实际温度值显示。
(5)能够根据需要方便设定上下限报警温度。 (6)当达到报警温度后,能够自动发出报警声。 (7)显示测温时间,方便控制。 (8)设计开机时间报警功能。
4
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 3 器件的选择
本设计是选用DS18B20作为温度传感器,选用AT89S52单片机作为整个设计的核心处理器部分。通过处理作为温度传感器传输的温度信息后,将处理后的信息传输给LCD液晶显示器。所以用到的器件有AT89S52、DS18B20、LCD等。
3.1 单片机的选择
3.1.1 AT89S52的特点及选择原因
AT89S52作为温度测试系统设计的核心器件.该器件是INTEL公司生产的MCS一5l系列单片机中的基础产品,采用了可靠的CMOS工艺制造技术.具有高性能的8位单片机,属于标准的MCS一51的CMOS产品。片内含8K bytes的可贩毒擦写的只读程序存储器(PEROM)和256 bytes的随机存取数据存储器(RAM),器件兼容标准的MCS-51指令系统。片内置通用8位中央处理器(CPU)和Flash存储单元。结合了HMOS的高速和高密度技术及CHMOS的低功耗特征。
其具有如下性质:
(1)与MCS-51 产品指令系统完全兼容 (2)8K字节可重擦写Flash闪烁存储器。 (3)寿命:1000写/擦循环。 (4)数据保留时间:10年。 (5)全静态工作:0Hz-24Hz。 (6)三级程序存储器锁定。 (7)128*8位内部RAM。 (8)32可编程I/O线。 (9)三个16位定时器/计数器。
5
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 (10)8个中断源。 (11)可编程串行通道。
(12)低功耗的闲置和掉电模式。 (13)片内振荡器和时钟电路。
AT89S52单片机提供以下标准功能:8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
由于此设计需要编写程序,需要将程序烤入单片机中,因此单片机必须具有足够多的存储空间,其具有8K字节的Flash完全满足要求。32位的I/O 口线能够使得单片机与温度显示器、温度传感器、键盘、报警电路、按键电路和指示灯连接等等变得可能。16位的定时计数器使得读取数据变得更加简单,同时其结构有利于晶振电路和复位电路的连接。最重要的是,能够在掉电状态下保存RAM内的数据。同时,与同类51单片机相比,AT89S52具有更强的可操作性。因此,对于本设计来说,选择AT89S52是最有利的。
3.1.2 AT89S52的工作模式及注意事项
AT89S52单片机有两种可用软件编程的省电模式,它们是空闲模式和掉电工作模式。这两种方式是控制专用寄存器PCON(即电源控制寄存器)中的PD(PCON1)和IDL(PCON0)位来实现的。PD是掉电模式,当PD=1时,激活掉电工作模式,单片机进入掉电工作状态。IDL是空闲等待方式,当IDL=1,激活空闲工作模式,点偏激进入睡眠状态。如需同时进入两种工作模式,即PD和IDL同时为1,则先激活掉电模式。
在空闲工作状态下,CPU保持睡眠状态而所有的片内的外设都保持激活状
6
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 态,这种方式由软件产生,此时,片内RAM和所有特殊功能寄存器的内容保持不变。空闲模式可由任何允许的中断请求或硬件复位终止。
终止空闲工作模式的方法有两种,进入中断服务程序,执行完中断服务程序并紧随RST1(中断返回)指令后,下一条要执行的指令就是使单片机进入空闲模式的那条指令后面的一条指令。
其二是通过硬件复位可以将空闲工作模式终止。需要注意的是,当由硬件复位来终止空闲工作模式时,CPU通常是从激活空闲模式那条指令的吓一跳指令开始继续执行程序的,要完成内部复位操作,硬件复位脉冲要保持两个机器周期(24个时钟周期)有效,在这种情况下,内部禁止CPU访问片内RAM,而允许访问其他端口。为了避免可能对端口产生意外写入,激活空闲状态的那条指令后一条指令不应是一条端口或外部存储器的写入指令。
在掉电模式下,振荡器停止工作,进入掉电模式的指令是最后一条被执行的指令。片内RAM和特殊功能寄存器的内容在终止掉电模式前被冻结。退出掉电模式的唯一方法是硬件复位,复位后将重新定义全部特殊功能寄存器但并没有因此改变RAM中的内容,在Vcc恢复到正常工作电平前,复位应无效,但必须保持一定时间以使振荡器重启动并稳定工作。
AT89S52单片机具有一些极限参数: (1)工作温度:-55摄氏度至+125摄氏度 (2)储藏温度:-65摄氏度至+150摄氏度 (3)任一引脚对地电压:-1.0V至+7.0V (4)最高工作电压:6.6V (5)直流输出电流:15.0mA
表3-1 空闲和掉电模式外部引脚状态
模式 空闲模式 空闲模式 掉电模式 掉电模式 程序存储器 内部 外部 内部 外部 ALE 1 1 0 0 7
PSEN 1 1 0 0 P0 数据 浮空 数据 浮空 P1 P2 P3 数据 数据 数据 数据 地址 数据 数据 数据 数据 数据 数据 数据 盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 3.2 温度传感器的选择
3.2.1 DS18B20的特点及选择原因
DS18B20是美国DALLAS公司继DS1820之后推出的增强型单总线数字式温度传感器,它在转换速度、转换时间、传输距离、分辨率等方面较之前产品有了很大的改进,给用户带来了更方便、更令人满意的效果。DALLAS 最新单线数字温度传感器DS18B20是一种新型的“一线器件”,其体积更小、更适用于多种场合、且适用电压更宽、更经济。DALLAS 半导体公司的数字化温度传感器DS18B20是世界上第一片支持“一线总线”接口的温度传感器。温度测量范围为-55~+125 摄氏度,可编程为9位~12 位转换精度,测温分辨率可达0.0625摄氏度,分辨率设定参数以及用户设定的报警温度存储在EEPROM 中,掉电后依然保存。被测温度用符号扩展的16位数字量方式串行输出;其工作电源既可以在远端引入,也可以采用寄生电源方式产生;多个DS18B20可以并联到3 根或2 根线上,CPU只需一根端口线就能与诸多DS18B20 通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。
DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DQ 为数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源; GND为地信号;VDD为可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。
在硬件上,DS18B20与单片机的连接有两种方法,一种是VCC接外部电源,GND接地,I/O与单片机的I/O线相连;另一种是用寄生电源供电,此时UDD、GND接地,I/O接单片机I/O。无论是内部寄生电源还是外部供电,I/O口线要接5KΩ左右的上拉电阻.
DS18B20 的性能特点如下:
独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可
8
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 实现微处理器与DS18B20的双向通讯。
DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。
低温触发器 图3-1 DS18B20内部结构框图
64 位 ROM 和 单 线 接 口 存储器与控制逻辑 高速缓存 温度传感器 8位CRC发生器 配置寄存器 高温触发器
DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内。
其具有9条特点:
(1)适应电压范围更宽,电压范围:3.0~5.5V,在寄生电源方式下可由数据线供电。
(2)温范围-55℃~+125℃,在-10~+85℃时精度为±0.5℃。 (3)零待机功耗。
(4)可编程的分辨率为9~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温。
(5)在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快。 (6)用户可定义报警设置。
(7)报警搜索命令识别并标志超过程序限定温度的器件。
(8)结果直接输出数字温度信号,以\"一线总线\"串行传送给CPU,同时可
9
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 传送CRC校验码,具有极强的抗干扰纠错能力。
DS18B20作为新型的一线器件,能够方便的和中心处理器进行连接,并具有很大的扩展空间。温度范围较广,使得整体的测温范围能大幅度的上升,零待机消耗更是起到了节能的作用。利用用户能自定义报警设置这一特点,能够在实现报警功能上得到很大的便利,同时极强的抗干扰性能使得温度的检测更加准确,作为温度计最基本的要求,准确必须满足。这些好处使得DS18B20最终被选择。
3.2.2 DS18B20的测温原理
DS18B20的测温原理如图3-2所示,图中低温度系数晶振的振荡频率受温度的影响很小用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量.计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55 ℃所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55 ℃所对应的一个基数值。
首先用DS1820提供的读暂存寄存器指令(BEH)读出以0.5℃为分辨率的温度测量结果,然后切去测量结果中的最低有效位(LSB),得到所测实际温度整数部分T整数,然后再用BEH指令读取计数器1的计数剩余值M剩余和每度计数值M每度,考虑到DS1820测量温度的整数部分以0.25℃、0.75℃为进位界限的关系,实际温度T实际可用下式计算得到:T实际=(T整数-0.25℃)+(M每度-M剩余)/M每度。
10
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 预置 斜率累加器 比较 计数器 1 预置 =0 低温度系数晶振 高温度系数晶振 计数器 2 温度寄存器 =0 图3-2 DS18B20测温原理图
3.3 显示器的选择
由于设计中要求同时显示测试温度、温度上限、温度下限和开机时间,因此显示屏首先要能够一次性容纳这些字符。工作电压不能太高,与单片机的连接方式需要简单,显示准确。本设计中采用的是1602型LCD液晶屏能够很好的满足这些要求。
此液晶属于工业字符型液晶,能够同时显示16x02即32个字符。LCD液晶显示器是一种低压、微功耗的显示器件,只要2~3伏就可以工作,工作电流仅为几微安,是任何显示器无法比拟的,同时可以显示大量信息,除数字外,还可以显示文字、曲线,比传统的数码LED显示器显示的界面有了质的提高。在仪表和低功耗应用系统中得到了广泛的应用。
1602拥有很多出色的优点:
(1) 显示质量高,由于液晶显示器的每一个点收到信号后就一直保持那种色彩和亮度恒定发光,因此液晶显示器的画质高而且不会闪烁。
(2) 数字式接口,液晶显示器都是数字式的,和单片机的接口简单操作也很
11
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 方便。
(3) 功率消耗小,相比而言液晶显示器的主要功耗在内部电极和驱动IC上,因而耗电量比其他器件要小很多。
12
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 4 电路原理
整个设计的电路包括了最小系统电路、温度控制电路、温度显示电路、按键电路和报警电路五部分电路组成。
4.1 晶振电路与复位电路
晶振电路和复位电路与单片机连接构成最小系统电路,如何选取合适的引脚,选取何种连接方式都至关重要。因此需要了解AT89S52的引脚特点。
图4-1 AT89S52单片机引脚图
在晶振电路中,主要用到了XTAL1和XTAL2两个引脚。
(1)XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 (2)XTAL2:来自反向振荡器的输出。
在晶振电路中,AT89S52具有两种晶振方式,一种是片内时钟振荡方式,但需要在引脚外接石英晶体和振荡电容,振荡电容的值一般取10-30pf。另一
13
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 种是外部时钟方式,即将XTAL1接外部时钟,XTAL2脚悬空。本设计的晶振电路如图4-2所示。
图4-2 晶振电路
单片机的晶振频率采用11.0592MHZ,加两个30pF电容。
XTAL1和XTAL2分别为反向放大器的输入和输出,外接石英晶体和振荡电容,构成了片内时钟振荡方式。而振荡周期指的就是单片机外接石英晶体振荡器的周期。当时钟起振后,产生一定的频率的时钟信号,单片机的CPU在时钟信号的控制下能一步一步完成自己的工作,同时与整个系统相关的周期还有振荡周期、状态周期、机器周期和指令周期。
电容C1和C2主要用于校正波形,振荡器的作用主要是产生时钟振荡。而整个电路的作用则是为了产生自激振荡。
对于复位电路,AT89S52有两种复位方式,分别是上点复位和按键复位。本设计采用的是按键复位,即利用一个复位电容和按键的组合使得复位变得更加直接和简单。
引脚RST作用是复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。在按下按键后,系统自动复位,十分方便。在复位电路中添加按键主要是为了能够使得复位更加方便,电容主要是在复位后进行充电,而上拉电阻起到限流的作用,保护了电路。
14
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112
图4-3 复位电路
4.2 温度采集电路
温度控制电路主要运用到了DS18B20和AT89S52。如何使两者连接实现功能是温度控制电路的主要设计目的。
图4-4 DS18B20管脚图
在硬件上,DS18B20与单片机的连接有两种方法,一种是VCC接外部电源,GND接地,I/O与单片机的I/O线相连;另一种是用寄生电源供电,此时UDD、GND接地,I/O接单片机I/O。内部寄生电源I/O口线要接5KΩ左右的上拉电阻。这里采用的是第一种连接方法,如图4-5所示:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚电位被内部上拉电阻拉高,且作为输入。作为输入时,P2口的管脚电位被外部拉低,将输出电流,这是由于内部上拉的缘故。
15
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112
图4-5 温度采集电路
传感器数据采集电路主要指DS18B20温度传感器与单片机的接口电路。DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式考虑到实际应用中寄生电源供电方式适应能力差且易损坏,此处采用电源供电方式,I/O口接单片机的P2.4口。
4.3 显示电路
液晶显示器是一种将液晶显示器件,连接器件,集成电路,PCB线路板,背光源,结构器件装配在一起的组件。
在显示电路中,VSS接地,VDD接5V正电源, VEE为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,为了获得最佳对比度,VEE接地。
RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
RS和R/W选用不同的高低电平,将影响寄存器的选择。
16
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 表4-1 寄存器选择控制表
RS 0 0 1 1
R/W 0 1 0 1
操作说明
写入指令寄存器(清除屏等)
读busy flag(DB7),以及读取位址计数器(DB0~DB6)值
写入数据寄存器(显示各字型等)
从数据寄存器读取数据
由于液晶显示器的功能是显示各字符,所以RS置高电平,R/W接地。 8位双向数据线D0-D7与双向I/O口相连。
图4-6 液晶显示电路图
4.4 报警系统
利用有源蜂鸣器进行报警输出,采用直流供电。当所测温度超过获低于所预设的温度时,数据口相应拉高电平,报警输出。而另一端则直接和单片机的P2.3/A11端口相连。
17
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 至于报警电路,连接方式如4-4所示。
图4-7 报警电路
4.5 按键电路和指示灯电路
按键电路的一端接地,一端和AT89S52的P1相应端口相连。
图4-8 按键电路
四个按键的功能分别能进行加减、修改和复位功能,配合指示灯电路,进行温度上下限的设置。
图4-9 指示灯电路
18
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 5 程序原理及系统流程图
5.1 主程序
返回 N 执行报警程序 温度极限 Y 从DS18B20读取温度并显示 N 按键设置 SET键被按下? Y 显示初始化 初始化中断和定时器 开始
图5-1 主程序流程
主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量的当前温度值,温度测量每250ms进行一次。主程序的第二个功能是查询SET键是否被按下,以实现设置温度上下限的功能。其程序流程见图5-1所示。由总的流程图可以分析出,在整个程序中应该包括如下几个部分:读写DS18B20子
19
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 程序,温度转换子程序,处理温度数据子程序,动态数据显示子程序等。
5.2 读出温度子程序
读出温度子程序的主要功能是读出RAM中的数据,在读出时需进行CRC校验,校验有错时不进行温度数据的读取。其程序流程图如图5-2所示。
开始 初始化DS18B20 写DS18B20读取温度指令 温度转移成功? N Y 移入温度寄存器 单片机读取温度数据 结束 图5-2 读温度子程序
CPU对DS18B20的访问流程是:先对DS18B20初始化,再进行ROM操
20
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 作命令,最后才能对存储器操作,数据操作。DS18B20每一步操作都要遵循严格的工作时序和通信协议。如主机控制DS18B20完成温度转换这一过程,根据DS18B20的通讯协议,须经三个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。
void Init_DS18B20(void) { }
上述程序中将DQ拉低,精确延时,再将DQ拉高,通过判断x的值来确定是否已经初始化完成。
另外,由于DS18B20单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要。单总线的所有处理均从初始化开始。初始化过程是主机通过向作为从机的DS18B20芯片发一个有时间宽度要求的初始化脉冲实现的。初始化后,才可进行读写操作。ROM操作命令 总线主机检测到DS18B20的存在,便可以发出ROM操作命令之一。对DS18B20操作,先跳过ROM,即是启动DS18B20进行温度变换,之后通过匹配ROM 再逐一地读回每个DS18B20的温度数据。在DS18B20组成的测温系统中,主机在发出跳过ROM命令之后,再发出统一的温度转换启动码44H,就可以实现所有DS18B20的统一转换,再经过250ms后,就可以用很少的时间去逐一读取。这种方式使其T值往往小于传统方式。
21
unsigned char x=0; DQ = 0; delay_18B20(80); DQ = 1; delay_18B20(14); x=DQ; delay_18B20(20);
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 {
unsigned char a,b; signed int temp; EA=0;
Init_DS18B20(); WriteOneChar(0xCC); WriteOneChar(0x44); delay_18B20(70); EA=1;
Init_DS18B20(); EA=0;
WriteOneChar(0xCC); WriteOneChar(0xBE); a=ReadOneChar(); b=ReadOneChar(); EA=1; temp=b; temp<<=8; temp=temp|a; return temp; }
这段程序中,主要作用是在确保了DS18B20的工作状态后,从DS18B20的温度寄存器中提取出温度值的高位和低位,再将两个字节合并为一个字节,经过处理后从输出端输出。
5.3 温度数据显示子程序
显示温度数据子程序主要是对显示缓冲数组中的显示数据进行刷新操作,
22
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 查表送段码至LCD,点亮数码管,显示数字。一个字节不能直接在显示屏上显示,这就需要将字节通过处理转化成能在LCD上显示的数。
{ if(shuju>0)
data_T[4]=shuju/100+0x30; else {
shuju=~shuju+0x01;
data_T[4]='-'; }
data_T[5]=shuju%100/10+0x30; data_T[6]=shuju%10+0x30; }
段程序的作用在于,在接收到温度信息后,通过转化,变成能在LCD上显示的字符。再通过LCD显示出来。
5.4 设置温度上下限程序
该系统可以设置温度上下限,当SET=1,开启中断,可以设置温度上限,如果DEC有效,减一;如果ADD有效,加一。当SET=2,开启中断,可以设置温度下限,如果DEC有效,减一;如果ADD有效,加一。流程图如5-3所示。
对于设置上下限来说,最重要的是切换到底是对TH还是TL进行设置,可加减温度。因此在设计过程中必须满足这两点,
23
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 开始 SET等于0? Y N SET等于1? N Y 开中断设置温度上限 SET等于2 开中断设置温度下限 N 复位 Y 结束 图5-3 设置温度上下限程序
用于说明进入加减状态,方便修改温度上限。
sbit point=P1^3; sbit th=P1^4; sbit tl=P1^5;
void delay(uchar k) { uchar i,j;
24
盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 for(j=0;j 计时器作为本设计的特点,其程序时间相当重要。 图 5-4 计时器工作流程 结束 Y 报警 到达报警时间? N 继续计时 开始计时 初始化计时器 开始 当计数器被初始化后,根据AT89S52的内部晶振周期,开始计时。当达到设置的报警温度时,报警电路发出报警声,此报警声有别于当温度到达温度上限时的报警声,使得用户不会发生混淆。 在程序编写过程中,最为重要的是如何在进行其他设置时,计时器还持续 25 盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 工作,并且如何使得计时器的跳动变得正确,如何使计时期在到达报警时间后,能够发出警报,如何使报警的声音又别于温度到达上限时发出的报警声。 write1602com(0x80); data_T[5]='.'; for(i=0;i<10;i++) { dealdata(); write1602dat(data_T[i]); delay(1); } 整段程序过于繁琐,不作赘述。本段程序的功能主要是如何使得计时的温度显示在显示器上。 26 盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 6 软件仿真 6.1 软件介绍 Proteus是英国Labcenter公司开发的电路分析与实物仿真及印制电路板设计软件,它可以仿真、分析各种模拟电路与集成电路,软件提供了大量模拟与数字元器件及外部设备,各种虚拟仪器,特别是它具有对单片机及其外围电路组成的综合系统的交互仿真功能。 Proteus主要由ISIS和ARES两部分组成,ISIS的主要功能是原理图设计及与电路原理图的交互仿真,ARES主要用于印制电路板的设计。 6.2 仿真过程 在Proteus中仿真如下图所示,主要包括四部分:测量并显示温度,设置温度上限,设置温度下限和测量开机时间。 图6-1 测试温度仿真 在仿真过程中,主要检测DS18B20是否能快捷的检测出室温,能否随着温度的变化而变化。这是检验是否能检验温度的重要标准。 27 盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 由仿真结果可以看出,温度传感器显示的温度和LCD上显示的温度是相同的,并且正确测出了室温,这就很好的验证了本设计具有准确的检测出室温并且能正确的显示的功能。 设置温度上下限时,主要通过第四按键来选择是否修改上下限。而设置温度上限和设置温度下限的方式相同。所以举例演示上限的设置方法。 图6-2 温度上限设置的仿真演示 当按下point键,直至表示TH的D6灯亮起,再按下enter键表示确定修改,此时LCD上,代表温度上限的数字开始闪烁跳动,在通过add键和sub键组合使用,加减温度上限,在演示中,我将温度上限上调了亮度,再按enter键确定,则温度上限修改完成,下限的设置方法相同。 通过显示证明了本设计的温度计能够精确的调整温度的上下限设置。 对于开机时间的测试则更加容易说明。 图6-3 开机时间测试仿真演示 刚开机时,LCD显示屏的右下角显示的是3秒,在相同的环境下,使其正 28 盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 常运行数十分钟后,其它数值未发生改变,而代表开机时间的数字则变成了48分钟,比较真实的时间发现,这个时间和真实的时间是相同的,这说明此设计能很好的记录开机的时间,方便人们的观测。 图 6-4 报警电路仿真 当设置的最高温度低于室温时,报警电路开始启动,报警灯持续闪烁,耳边不断响起报警声。直至设置高于常温的最高温度。 在设计中加入了计时报警功能,当计数器到达30秒或者30秒的倍数时,电路自动报警,提示用户温度计已经运行的时间 29 盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 7 实物的焊接与调试 由于本次设计使用的是万能实验板,上面没有布线,并且所需元器件比较多,所以焊接起来比较麻烦,因此焊接时一定要小心,避免虚焊和短路。每焊完一个元器件或者一条线路都要用万用表检查焊接是否成功。 实物焊出来之后,先要进行硬件调试。电路的调试过程是检验、修正设计方案的实践过程,也是应用理论知识来解决实践中各类问题的关键环节,是电路设计者必须掌握的基本技能。 把电子元器件连接起来,实现特定功能的关键一步是调试。调试方法有两种:分块调试法和整体调试法。 图7-1 实物成品 具体的调试步骤如下: (1) 电前检查。任何组装好的电子电路,在通电调试之前,必须认真检查电 30 盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 路连线是否有误。检查的方法是对照电路图,按一定的顺序逐级对应检查。特别是注意电源是否接错,电源与地是否有短接,集成电路和晶体管的引脚是否接错,轻轻拨一拨元器件,观察焊点是否牢固等 (2)通电检查。先调试好所需电源电压数值,然后再给电路接通电源。电源一经接通,先要观察是否有异常现象,如冒烟、异常气味、放电的声光、元器件发烫等。如果有,应立即关断电源,待故障排除后,方可重新接通电源。然后,测量每个集成块的电源引脚电压是否正常,以确信集成电路是否已通电工作。 (3)分块调试。分块调试时应明确本部分的调试要求,按调试要求测试性能指示和观察波形。调试顺序按信号的流向进行,这样可以把前面调试过的输出信号作为后一级的输入信号,为最后的整机联调创造条件。 (4)整机联调。整机联调时应观察各单元电路连接后各级之间的信号关系,主要观察动态结果,检查电路的性能和参数,分析测量的数据和波形是否符合设计要求。 实物经过硬件调试后还要进行软件调试,即将程序写入到单片机存储器中,实现设计功能。 31 盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 8 体会与展望 8.1 设计总结 在工业生产和日常生活中,对温度控制系统的要求,主要是保证温度在一定温度范围内变化,稳定性好,不振荡,对系统的快速性要求不高。在论文中简单分析了单片机温度控制系统设计过程及实现方法。本系统的测温范围为-10℃~40℃,温度检测系统根据用户设定的温度范围完成一定范围的温度控制。 本次毕业论文中设计的温度计主要由AT89S52和DS18B20来实现功能的。因此需要通过查阅资料来了解这些器件的基本结构,主要功能和注意事项等等。通过了解器件,在触类旁通之下,能够知道与所选器件相似的器件,比较彼此之间的优缺点,来确定设计选择的器件是否合适,如何更好的利用器件的特点成为了本次设计重要的一方面。在确定了器材之后,如何利用使之最大限度的体现设计的功能,完成设计目标,这又是需要花大量时间去思考的。 在设计完成之后,设计合理的程序和通过仿真软件模拟仿真,又再一次检验了设计的成果。最后在实物焊接完成后,整个设计才圆满完成。温度计设计作为一种比较简单的单片机设计,只有突出其在简单,方便,使用,便捷方面,这个设计才有其意义。 整个设计从确定题目,到寻找相关资料,再到选择合适的器件,接着对电路图的绘制,程序的编写,仿真的进行,实物的焊接,最终调试。一步步走过来,一点点的进步,花了大量的时间和精力,而成果也是喜人的。 经过四个多月的方案论证、系统的硬件和软件的设计、系统的调试。查阅了大量的关于传感器、单片机及其接口电路、以及控制方面的理论。经过了一番特殊的体验后,经历了失败的痛苦,也尝到了成功的喜悦。第一次靠用所学的专业知识来解决问题。检查了自己的知识水平,使我对自己有一个全新的认识。通过这次毕业设计,不仅锻炼自己分析问题、处理问题的能力,还提高了自己的动手能力。 32 盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 这些培养和锻炼对于我们这些即将走向工作岗位的大学生来说,是很重要。 8.2 设计前景 在单片机自动控制已经广泛的应用于人们的生产和生活的今天,传统用模拟电路来控制温度的做法,已经逐渐被淘汰。这个系统的实现,改变了传统的温度控制方法,为温度的控制开辟了一条新的道路。 与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,由于并且单片机价格的相对低廉,能够大量的普及。现在温度计的需求在日益增大当中。 生活中,人们渐渐习惯了温度计的存在,而单片机的相对低廉决定了温度计的经济效益。对于本系统的使用者来说,本系统能够很稳定的控制温度而且稳定性很高。只要配上适当的温度传感器,这个系统便还可以实现很多领域的温度自动控制。这对于提高系统的利用率,避免重复设计有很大的帮助的。在本系统的作用下,可以为工作系统提供一个良好的环境,使产品的数量和质量有很大的提高。使得产品的生产成本降低,从而使系统的使用者获得的利润提高了。 在农业大棚技术发展的今天,大棚温度需要严格控制,而温度计的使用能够帮助管理者更好的控制大棚温度。 当然单纯的温度检测也许不能满足这些要求,在本设计基础上加上湿度检测,定时温度记录,与温度调节装置连接起来,用于自动调节温度等等,都是可以扩展的内容。 总之,本设计简便实用,并且可研究开发并升级的空间是很大的。 33 盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 致 谢 在本次毕业设计中,从选定题目到查询相关材料,再到设计电路,程序设计,模拟仿真,最后实物焊接,对这些我都付出了很多心血,但每个人的知识储备并非那么全面,仅仅一个人的努力是不够。因此,只有在得到了很多老师和同学的支持下,我才能完成这个设计。在这里,我要特别感谢我的导师李辉老师,在毕业设计的开始,老师给了我很多帮助,指导我了解了很多单片机的相关知识,并在当我设计遇到困难时,及时的给予帮助和鼓励,同时,对我其他学科的鼓励也渗透在毕业设计时,给了我莫大的信心,为我顺利完成毕业设计起到了非常重要的作用。而在最后整理论文时,总是在认真阅读之后给予我认真的评价,使得我的论文无论是从内容上还是格式上都有了很大的进步。我还要感谢实习组及实验室的所有老师,为我的毕业设计提供了非常便利的条件。最后还要感谢帮助我的同学,在我遇到困难时给予我耐心的帮助,没有他们无私的帮助,也不会有我今天的毕业设计。 对于养育我多年的父母,在毕业离开大学校园之后,我将以我的以我的实际行动来报答他们这二十多年来的默默支持,努力使他们生活的更好,这将是我毕业后下半生的重要责任与义务。 再次对在本次毕业设计中给予过我帮助的老师和同学至上我最真挚的谢意。 34 盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 参考文献 [1] 余发山,王福忠.《单片机原理应用及应用技术》[M]. 中国光也大学出版社2003 :3-70 [2] 沈德金,陈粤初.《单片机接口电路与应用程序实例》[M].北京航天航空大学出版社.1990 :50-75 [3] 潘新民,王燕芳.《微型计算机控制技术》[M] .电子工业出版社2003:12-19 [4] 孙育才,《单片微型计算机及其应用》[M] .东南大学出版社,2004: 3-20 [5] 李广弟,《单片机基础》[M]..北京航空航天大学出版社,1994:7-20 [6] 阎石,《数字电子技术基础(第三版)》[M].高等教育出版社,1989:3-50 [7] 廖常初《现场总线概述》[J].电工技术,1999:70-81. [8] 王勇 叶敦范.《基于AT89S51 的便携式实时温度检测仪》[J],《仪表技术与传感器》,2006:1-2 [9] MAXIM NEW Releases Data Book. volum 1998 [10] 陈慕君.唐慧刚.刘其群.袁富娟 种基于AT89C51单片机控制的数字温度计 设计[J] 科技信息 009(14) 35 盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 附录A 系统总图 36 盼盼电子设计网 www.ppedn.com 提供电子类毕业设计一条龙服务 qq:1014439112 37 因篇幅问题不能全部显示,请点此查看更多更全内容