本科毕业设计--基于单片机数字温度计设计.doc
《本科毕业设计--基于单片机数字温度计设计.doc》由会员分享,可在线阅读,更多相关《本科毕业设计--基于单片机数字温度计设计.doc(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 本科生毕业设计(论文)题 目: 基于单片机的数字温度计的设计 学生姓名: 系 别: 机械与电气工程系 专业年级: 指导教师: 2013年 6 月 20 日中国石油大学胜利学院本科毕业设计(论文)摘要本文主要介绍了一个基于AT89C51单片机的测温系统,详细描述了利用数字温度传感器DS18B20开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各部分的电路进行了介绍,该系统可以方便的实现温度采集和显示,并可以根据需要,任意设定上下限报警温度,它适合我们日常生活和工农业生产中的温度测量,也可以当做温度处理模块嵌入其他系统中,作为其他主系统的辅助扩展
2、。DS18B20和AT89C51结合实现最简温度检测系统。本温度计属于多功能温度计,可以设置上下限报警温度,当温度不在设置范围内时,可以报警。关键词:单片机;数字控制;温度计; DS18B20;AT89C51ABSTRACTThis paper introduces a temperature measurement system based on AT89C51 microcontroller, a detailed description of the process of using digital temperature sensor DS18B20 temperature measu
3、rement system development, focusing on the sensor under the SCM hardware connection, software programming and system flow of each module were analyzed in detail on the part of the circuit, the system can realize temperature acquisition convenient and display, and can according to need, set the alarm
4、 temperature, it is suitable for our daily life and industrial and agricultural production in the temperature measurement, it can also be used as a temperature processing module embedded in other systems, as other auxiliary system. DS18B20 and AT89C51 combine to achieve the most simple temperature d
5、etection system. The multi-purpose thermometer, you can set the alarm temperature, when the temperature is not in the set range,it can alarm.Keywords: single chip microcomputer; digital control; thermometer; DS18B20; AT89C51目录前 言6第一章 硬件设计71.1 AT89C51芯片功能简介71.1.1 AT89C51芯片简介71.1.2 引脚功能71.2 数字温度传感器模块8
6、1.2.1 DS18B20性能81.2.2 DS18B20引脚说明91.2.3 DS18B20测温原理91.2.4 DS18B20的工作时序101.3测温电路设计111.4 按键模块设计121.5 报警电路设计121.6 显示电路设计131.7 串口电路设计13第二章 系统软件设计142.1 各模块的程序设计142.1.1主程序流程图142.1.2 读出温度子程序142.1.3 温度转换命令子程序152.1.4 计算温度子程序162.1.5 显示数据刷新子程序172.1.6 报警子程序172.1.7 按键扫描处理子程序182.2 Keil C51编程软件182.2.1 Keil C51简介18
7、2.2.2 Keil C51软件应用18第三章 系统的仿真与总结203.1 Protues仿真203.1.1 Protues简介203.1.2 proteus 的工作过程203.1.3 Protues测温仿真213.1.4 性能分析233.2 总结233.2.1硬件方面233.2.2软件方面23致谢26附录27附录A 程序清单27附录B 系统总设计图37前 言随着新技术的不断开发与应用,近年来单片机发展十分迅速,一个以微机应用为主的新技术革命浪潮正在蓬勃兴起,单片机的应用已经渗透到电力、冶金、化工、建材、机械、食品、石油等各个行业。传统的温度采集方法不仅费时费力,而且精度差,单片机的出现使得温
8、度的采集和数据处理问题能够得到很好的解决。温度是工业对象中的一个重要的被控参数。然而所采用的测温元件和测量方法也不相同;产品的工艺不同,控制温度的精度也不相同。因此对数据采集的精度和采用的控制方法也不相同。传统的控制方式以不能满足高精度,高速度的控制要求,如温度控制表温度接触器,其主要缺点是温度波动范围大。由于他主要通过控制接触器的通断时间比例来达到改变加热功率的目的,受仪表本身误差和交流接触器的寿命限制,通断频率很低。近几年来快速发展了多种先进的温度控制方式,如:PID控制,模糊控制,神经网络及遗传算法控制等。这些控制技术大大的提高了控制精度,不但使控制变得简便,而且使产品的质量更好,降低了
9、产品的成本,提高了生产效率。本设计使用单片机作为核心进行控制。单片机具有集成度高,通用性好,功能强,特别是体积小,重量轻,耗能低,可靠性高,抗干扰能力强和使用方便等独特优点,在数字、智能化方面有广泛的用途。本课题的研究方法是利用单片机和数字温度传感器DS18B20设计一台数字温度计。单片机作为主控制器,数字温度传感器DS18B20作为测温元件,传感器DS18B20可以读取被测量温度值,进行转换,从而用4位共阴极LED数码管来显示转换后的温度值。本课题的主要研究内容如下:1. 温度测试基本范围0100。2. 精度为0.5。3. LED数码管显示。4. 可以设定温度的上下限报警功能。5. 实现报警
10、提示。第一章 硬件设计1.1 AT89C51芯片功能简介1.1.1 AT89C51芯片简介AT89C51是一种带4K字节闪烁可编程可檫除只读存储器(FPEROM-Flash Programable and Erasable Read Only Memory )的低电、高性能CMOS 8位微处理器。1.1.2 引脚功能AT89C51芯片的引脚图如图1-1所示:图1-1 AT89C51引脚图AT89C51的引脚功能如下:1、主电源引脚(2根)VCC:电源输入,接5V电源GND:接地线2、外接晶振引脚(2根)XTAL1:片内振荡电路的输入端XTAL2:片内振荡电路的输出端3、控制引脚(4根)RST/
11、VPP:复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。ALE/PROG:地址锁存允许信号PSEN:外部存储器读选通信号EA/VPP:程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。4、可编程输入/输出引脚(32根)AT89C51单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。PO口:8位双向I/O口线,名称为P0.0P0.7P1口:8位准双向I/O口线,名称为P1.0P1.7 P2口:8位准双向I/O口线,名称为P2.0P2.7 P3口:8位准双向I/O口线,名称为P3.0P3.71.
12、2 数字温度传感器模块1.2.1 DS18B20性能1、独特的单线接口仅需一个端口引脚进行通信2、简单的多点分布应用3、无需外部器件4、可通过数据线供电5、零待机功耗6、测温范围-55+125,以0.5递增7、可编程的分辨率为912位,对应的可分辨温度分别为0.5、0.25、0.125和0.06258、温度数字量转换时间200ms,12位分辨率时最多在750ms内把温度转换为数字9、应用包括温度控制、工业系统、消费品、温度计和任何热感测系统10、负压特性:电源极性接反时,传感器不会因发热而烧毁,但不能正常工作1.2.2 DS18B20引脚说明DS18B20内部结构主要由四部分组成:64位光刻R
13、OM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的管脚有三个,DQ 为数据输入/输出引脚,当被用在寄生电源下,也可以向器件提供电源;GND为地信号;VDD为可选择的电源引脚,当工作于寄生电源时,此引脚必须接地;当VDD端口接电源时是使用外部电源。1.2.3 DS18B20测温原理DS18B20的测温原理如图1-2所示,图中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的
14、时钟脉冲进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55 所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55 所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器 1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计
15、数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,这就是DS18B20的测温原理。预置斜率累加器比较低温度系数振荡器计数器1温度寄存器Tx预置=0高温度系数振荡器=00计数器2T1加1停止T2图1-2 DS18B20测温原理图1.2.4 DS18B20的工作时序DS18B20的工作协议流程是:初始化ROM操作指令存储器操作指令数据传输。其工作时序包括初始化时序、写时序和读时序,如图1-3 (a)(b)(c)所示。主机控制DS18B20完成任何操作之前必须先初始化,即主机发一复位脉冲(最短为480us的低电平),接着主机释放总线进入接收状态,DS18B20在检测到I/O引脚上的上升沿之
16、后,等待15-60us然后发出存在脉冲(60-240us的低电平)。 写时间片:将数据从高电平拉至低电平,产生写起始信号。在15us之内将所需写的位送到数据线上,在15us到60us之间对数据线进行采样,如果采样为高电平,就写1,如果为低电平,就写0。在开始另一个写周期前必须有1us以上的高电平恢复期。 DS18B20等待 DS18B20Tx产生 15us16us 脉冲60-240 主机复位脉冲 VCC 480usTX960us 主机Rx min480us 1-Wire Bus GND图1-3 (a)初始化时序 主机写“0”时隙 主机写“1”时隙 VCC 60usTX120us 1ustxcc
17、1us DS18B20采样 15us MIN TYP MAX MIN TYP MAX 15us 30us 15us 15us 30us图1-3(b)写时序VCC 主机读“0”时隙 主机读“1”时隙1-Wire Bus GND 主机采样 1us15us 15us 30us 主机采样 15us图1-3(c)读时序读时间片:主机将数据线从高电平拉至低电平1us以上,再使数据线升为高电平,从而产生读起始信号。主机在读时间片下降沿之后15us内完成读位。每个读周期最短的持续期为60us,各个读周期之间也必须有1us以上的高电平恢复期。1.3测温电路设计数字温度传感器DS18B20的测温电路如图1-4所示
18、:图1-4 测温电路1.4 按键模块设计利用单片机的IO口实现按键的中断输入。另外需要一个与门实现与中断端口的连接。按键电路如图1-5所示,期中按键K1为进入/退出设置键;K2为增加键;K3为减少键。图1-5按键模块1.5 报警电路设计三极管驱动蜂鸣器:报警电路如图1-6所示,三极管Q5来驱动喇叭LS1。图1-6 报警电路1.6 显示电路设计采用四位共阴极LED数码管来显示温度,可以直接读取,温度精确到0.1。四位数码管的显示电路如图1-7所示,从左到右依次是百位,十位,个位,十分位。图1-7 显示电路1.7 串口电路设计单片机与上位机(PC机)的接口电路如图1-8所示:图1-8 接口电路第二
19、章 系统软件设计2.1 各模块的程序设计系统程序主要包括主程序,读出温度子程序,温度转换命令子程序,计算温度子程序,显示数据刷新子程序和按键扫描处理子程序等。2.1.1主程序流程图主程序的主要功能是负责温度的实时显示、读出并处理DS18B20 测量的当前温度值,温度测量每1s 进行一次。这样可以在一秒之内测量一次被测温度,其程序流程见图2-1 所示。初始化调用显示子程序1S到?初次上电读出温度值温度计算处理显示数据刷新发温度转换开始命令NYNY图2-1 主程序流程图2.1.2 读出温度子程序读出温度子程序的主要功能是读出RAM 中的9 字节,在读出时需进行CRC 校验,校验有错时不进行温度数据
20、的改写。其程序流程图如图2-2所示:Y发DS18B20复位命令发跳过ROM命令发读取温度命令读取操作,CRC校验9字节完?CRC校验正?确?移入温度暂存器结束NNY图2-2 读出温度子程序流程图2.1.3 温度转换命令子程序温度转换命令子程序主要是发温度转换开始命令,当采用12 位分辨率时转换时间约为750ms,在本程序设计中采用1s 显示程序延时法等待转换的完成。温度转换命令子程序流程图如图2-3 所示: 发DS18B20复位命令发跳过ROM命令发温度转换开始命令结束图2-3 温度转换命令子程序流程图2.1.4 计算温度子程序 开始温度零下?温度值取补码置“”标志计算小数位温度BCD值 计算
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 本科 毕业设计 基于 单片机 数字 温度计 设计
限制150内