(完整版)基于单片机的数字温度计设计与仿真毕业设计
- 格式:doc
- 大小:1003.50 KB
- 文档页数:76
单片机课程设计报告数字温度计1 设计要求■基本范围-50℃-110℃■精度误差小于0.5℃■LED数码直读显示2 扩展功能■实现语音报数■可以任意设定温度的上下限报警功能数字温度计摘要:随着时代的进步和发展,单片机技术已经普及到我们生活,工作,科研,各个领域,已经成为一种比较成熟的技术,本文将介绍一种基于单片机控制的数字温度计,本温度计属于多功能温度计,可以设置上下报警温度,当温度不在设置范围内时,可以报警。
关键词:单片机,数字控制,温度计,DS18B20,A T89S511 引言随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。
本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用,该设计控制器使用单片机A T89S51,测温传感器使用DS18B20,用3位共阳极LED数码管以串口传送数据,实现温度显示,能准确达到以上要求。
2 总体设计方案2.1数字温度计设计方案论证2.1.1方案一由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。
2.1.2 方案二进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。
从以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计也比较简单,故采用了方案二。
本科生毕业设计(论文)题目:基于单片机的数字温度计的设计学生姓名:系别:机械与电气工程系专业年级:指导教师:2013年 6 月 20 日摘要本文主要介绍了一个基于AT89C51单片机的测温系统,详细描述了利用数字温度传感器DS18B20开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各部分的电路进行了介绍,该系统可以方便的实现温度采集和显示,并可以根据需要,任意设定上下限报警温度,它适合我们日常生活和工农业生产中的温度测量,也可以当做温度处理模块嵌入其他系统中,作为其他主系统的辅助扩展。
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 measurement 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 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 detection 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)第一章硬件设计 (7)1.1 AT89C51芯片功能简介 (7)1.1.1 AT89C51芯片简介 (7)1.1.2 引脚功能 (7)1.2 数字温度传感器模块 (8)1.2.1 DS18B20性能 (8)1.2.2 DS18B20引脚说明 (9)1.2.3 DS18B20测温原理 (9)1.2.4 DS18B20的工作时序 (10)1.3测温电路设计 (11)1.4 按键模块设计 (12)1.5 报警电路设计 (12)1.6 显示电路设计 (13)1.7 串口电路设计 (13)第二章系统软件设计 (14)2.1 各模块的程序设计 (14)2.1.1主程序流程图 (14)2.1.2 读出温度子程序 (14)2.1.3 温度转换命令子程序 (15)2.1.4 计算温度子程序 (16)2.1.5 显示数据刷新子程序 (17)2.1.6 报警子程序 (17)2.1.7 按键扫描处理子程序 (18)2.2 Keil C51编程软件 (18)2.2.1 Keil C51简介 (18)2.2.2 Keil C51软件应用 (18)第三章系统的仿真与总结 (20)3.1 Protues仿真 (20)3.1.1 Protues简介 (20)3.1.2 proteus 的工作过程 (20)3.1.3 Protues测温仿真 (21)3.1.4 性能分析 (23)3.2 总结 (23)3.2.1硬件方面 (23)3.2.2软件方面 (23)致谢 (26)附录 (27)附录A 程序清单 (27)附录B 系统总设计图 (37)前言随着新技术的不断开发与应用,近年来单片机发展十分迅速,一个以微机应用为主的新技术革命浪潮正在蓬勃兴起,单片机的应用已经渗透到电力、冶金、化工、建材、机械、食品、石油等各个行业。
1.设计任务与要求本课题的研究方法是利用单片机和数字温度传感器DS18B20设计一台数字温度计。
单片机作为主控制器,数字温度传感器DS18B20作为测温元件,传感器DS18B20可以读取被测量温度值,进行转换,从而用4位共阳极LED数码管来显示转换后的温度值,可以设定温度的上下限报警功能,实现报警提示。
2.系统的总体设计方案本设计将利用DS18B20智能温度传感器和单片机小系统,设计一个数字温度采集系统。
并设计一个人机接口电路:键盘采用独立按键(功能自定义),显示器采用共阴极4位LED显示。
系统的总体设计方案框图如图2.1所示图2.1 系统的总体设计方案框图3.硬件设计本设计采用的是AT89C52单片机为核心的数字温度计,包含了利用温度传感器DS18B20的测温电路、外接键盘、显示电路、报警电路、复位电路和晶振电路。
以DS18B20为主要测温元件进行实时监控温度值。
以4位数码管为显示器件,利用单片机的P0口和电阻排来驱动4位数码管的显示;利用单片机的P1.7来驱动温度传感器DS18B20测温;报警电路利用三极管放大作用驱动报警器报警;按键是利用单片机的P1口和上拉电阻来驱动工作3.1复位电路设计复位电路有上电自动复位和按键手动复位两种方式。
上电自动复位是通过外部复位电路的电容充电来实现的,只要电源VCC的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就成了系统的复位初始化。
按键手动复位有电平方式和脉冲方式两种。
其中,按键电平复位是通过使复位端经电阻与VCC电源接通而实现的,而按键脉冲复位则是利用RC微分电路产生的正脉冲来实现的。
本系统的复位电路采用上电复位方式。
复位电路图如图3.1所示:3.2 晶振电路图3.1 复位电路图设计图3.2 晶振电路图3.3 DS18B20芯片简介DS18B20主要由4部分组成:64位ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。
DS18B20外形及管脚排列如图3.8和表3-3所示[5]。
基于单片机的数字温度计的设计与实现摘要采用单片机来对他们控制不仅具有控制方便,简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大的提高产品的质量和数量。
在生产过程中,为了高效地进行生产,必须对它的主要参数,如温度、压力、流量等进行有效的控制。
传统的测温元件有热电偶和二电阻。
而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,这些方法相对比较复杂,需要比较多的外部硬件支持。
我们用一种相对比较简单的方式来测量。
温度范围为-55~125 ºC,最高分辨率可达0.0625 ºC。
DS18B20可以直接读出温度值,而且采用三线制与单片机相连,减少了外部的硬件电路,具有低成本和易使用的特点。
本文介绍一种基于AT89C51单片机的一种温度测量及报警电路,该电路采用DS18B20作为温度监测元件,测量范围0℃-~+100℃,使用七级数码管LED模块显示,能设置温度报警上下限。
正文着重给出了软硬件系统的各部分电路,介绍了集成温度传感器DS18B20的原理,AT89C51单片机功能和应用,该电路设计新颖、功能强大、结构简单。
关键词:温度测量;DS18B20 ; AT89C51Design of Digital Thermomer Based on SCMABSTRACTControlled by single-chip microcomputer to control not only to them, advantages of simplicity and flexibility, and can significantly increase the temperature specifications, which can significantly increase the quality and quantity of the products. In the process of production, in order to efficiently produce, it must be the main parameters, such as temperature, pressure, flow, and other effective control. Traditional temperature measuring component thermocouple and resistance. Are generally voltage of thermocouple and thermal resistance measured, then converted to the corresponding temperature, these methods are relatively complex and requires more external hardware support. We are in a relatively simple way to measure.-55~125 ºc temperature range, maximum resolution up to 0.0625 ºc. DS18B20 can read temperature value, and wire connected to the microcontroller, reduced external hardware circuits, low cost and ease of use features.The introduction of a cost-based AT89C51 MCU a temperatur measurement circuits, the circuits used DS18B20 high-precision temperatur sensor, measuring scope 0℃-~+100℃,can set the warning limitation, the use of Seven digital tube seven segments LED that can be display the current temperature. The paper focuses on providing a software and hardware system components circuit, introduced the theory of DS18B20, the founctions and applications of AT89C51 .This circuit design innovative, powerful, can be expansionary strong.Keywords:Temperature measurement ;DS18B20 ;AT89C51目录摘要 (I)ABSTRACT (II)第一章绪论 (1)1.1 引言 (1)1.1.1 国内外现状 (1)1.1.2 课题背景及研究意义 (2)1.2 设计内容及性能指标 (2)1.3 系统概述 (3)1.3.1 系统方案论证与比较 (3)1.3.2 系统设计原理与组成 (5)第二章开发工具Proteus与Keil (6)2.1 Proteus软件 (6)2.1.1 Proteus简介 (6)2.1.2 4大功能模块 (6)2.1.3 Proteus简单应用 (8)2.2 Keil软件 (8)2.2.1 Keil软件简介 (8)2.2.2 Keil软件调试功能 (9)第三章系统硬件设计 (10)3.1 单片机的选择 (10)3.1.1 AT89C51单片机的介绍 (10)3.1.2 AT89C51单片机主要特性 (11)3.2 温度传感器的选择 (13)3.3 硬件电路设计 (17)第四章系统软件设计 (20)4.1 各模块的程序设计 (20)4.2 Protues测温仿真 (25)4.3 系统调试 (28)4.4 结果分析 (30)结论 (31)致谢 (32)参考文献 (33)附录1 全部程序清单 (34)附录2 系统总体设计图 (41)第一章绪论1.1引言1.1.1 国内外现状温度控制系统在国内各行各业的应用虽然已经十分广泛,但从国内生产的温度控制器来讲,总体发展水平仍然不高,同日本、美国、德国等先进国家相比,仍然有着较大的差距。
基于STC89C52的数字温度计目录1、简介....... .......... ..... 3 _ _2、计划选择2.1。
主控片选 (3)2.2.显示模块.............................. (3)2.3、温度检测模块………………………………… .. 43、系统硬件设计3.1。
51单片机最小系统设计………………………… .4 .电源电路设计…………………… .. 5.液晶显示电路设计……………………………… ..63.4.温度检测电路设计………… . . . 74.系统软件设计4.1。
温度传感器数据读取流程图......... .. (9)4.2.系统编程………………… .105. 编程与仿真5.1、Keil编程软件………………… .. .. 115.2.变形杆菌 (11)5.3.模拟界面……………………… ..116.总结........ .......... ........ 12 _ _ _ _ _七、附录附录 1. 原理图........ .......... (12)附录 2. 程序清单…………………………………………………………………… ..131 简介进入信息飞速发展的21世纪,科学技术的发展日新月异。
科学技术的进步带动了测量技术的发展,现代控制设备的性能和结构发生了翻天覆地的变化。
我们已经进入高速发展的信息时代,测量技术也成为当今技术的主流,已经渗透到研究和应用工程的各个领域。
温度与人们的生活息息相关,温度的测量变得非常重要。
2.系统方案选择2.1 主控芯片选型方案一:STC89C52RCSTC89C52RC是8051内核的ISP在线可编程芯片,最高工作时钟频率为80MHz,芯片内含8KB Flash ROM,可反复擦写1000次。
该器件兼容MCS-51指令系统和8051引脚结构。
该芯片集成了通用8位中央处理器和ISP Flash存储单元,具有在线可编程特性,在PC端有控制程序,用户程序代码可下载到单片机部门,无需购买通用编程器,速度更快。
基于单片机的数字温度计毕业设计目录摘要 (I)Abstract (II)第1章绪论 (1)1.1 基于单片机温度测量系统的研究背景 (1)1.2 基于单片机温度测量系统的发展现状 (1)1.3 基于单片机温度测量系统的研究的目的和意义 (2)1.4 基于单片机温度测量系统主要研究容 (2)第2章温度测量系统总体设计方案 (4)2.1 温度测量系统设计方案论证 (4)2.1.1 方案一 (4)2.1.2 方案二 (4)2.1.3 总体设计框图 (4)2.2 显示部分设计方案论证 (5)2.2.1 方案一 (5)2.2.2 方案二 (5)2.2.3 显示部分的整体框图 (5)2.3 键盘输入部分方案论证 (6)2.3.1 方案一 (6)2.3.2 方案二 (6)本章小结 (6)第3章温度测量系统硬件部分 (7)3.1 单片机模块 (7)3.1.1 AT89S52功能及特性 (7)3.1.2 AT89S52各个管脚说明 (8)3.1.3 单片机模块功能 (10)3.2 温度采集部分硬件 (11)3.2.1 温度传感器DS18B20 (11)3.2.2 DS18B20温度传感器与单片机的接口电路 (16)3.3 显示部分电路设计 (18)3.3.1 74HC573介绍 (18).WORD版本.3.3.2 74HC573芯片功能 (18)3.4 LED显示单元部分 (19)3.5 报警上,下限调整电路实现 (20)本章小结 (20)第4章系统软件设计 (21)4.1 主程序 (21)4.2 读出温度子程序 (21)4.3 温度转换命令子程序 (22)4.4 计算温度子程序 (23)4.5 显示数据刷新子程序 (24)本章小结 (24)结论 (25)致谢 (26)参考文献 (27)附录1 译文 (28)附录2 译文参考资料 (36)附录3 系统整体电路图 (45)附录4 源程序 (46)附录5 温度测量系统设计实物图 (56).WORD版本.第1章绪论1.1 基于单片机温度测量系统的研究背景随着社会的发展,科技的进步,以及测温仪器在各个领域的应用,智能化已是现代温度控制系统发展的主流方向。
前言科技发展到今天,人们的生活中涌现出各种各样的科技产品,各种各样的电子产品更是花样百出、遍及人们生活中的每一部分,现在人们更是感觉到了科技给人们带来的巨大发展,科学技术作为第一生产力在人类社会的发展中起了很大的推动作用,人类从原始向先进的发展都伴随着科学的发展。
当今微型计算机技术发展形成两大分支,一是以微处理器(Micro Processor Unit)为核心所构成的通用微机系统,主要用于科学计算、数据处理、图形图像处理、数据库管理、人工智能、数字模拟与仿真等领域。
另一分支是为控制器( Micro Controller Unit),俗称单片机。
单片机主要用于工业测控,如家用电器、计算机外围设备、工业智能化仪表、机器人、生产过程的自动控制、农业、化工、军事、航空航天等领域。
单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。
单片机也被称为微控制器(Microcontroller Unit),常用英文字母的缩写MCU 表示单片机,它最早是被用在工业控制领域。
单片机由芯片内仅有CPU的专用处理器发展而来。
最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。
INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。
随着时代的进步和发展,单片机技术已经普及到我们生活、工作、科研、各个领域,已经成为一种比较成熟的技术。
摘要:单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。
基于单片机的数字温度计设计毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:日期:指导教师签名:日期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:日期:学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:日期:年月日导师签名:日期:年月日注意事项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
基于单片机的数字温度计设计与仿真盘桂云(吉首大学物理科学与信息工程学院,湖南吉首416000)摘要本课题以单片机为控制核心,设计了一款数字温度计。
该系统由51单片机、DS18B20温度传感器以及1602 LCD液晶显示屏等部件组成。
系统上电后进入实时温度显示状态,此时将DS18B20中的温度值读到单片机中并将其显示在LCD液晶显示屏上。
系统可以设置上下限报警温度值,当测得结果超过设定值时进行相应的报警,提供一个接口可以将温度值传送给其它控制器或计算机,测量准确且误差小,其误差在±0.02℃。
关键词:单片机;温度采集;LCD显示;温度传感器;数字温度计;Emluater and Design of Digital Thermometer Based onMicrocomputer ControlPanguiyun(College of Physics Science and Information Engineering,Jishou University,Jishou,Hunan 416000)AbstractThis topic with the microcontroller as control core , and design a digital thermometer. It consists of 51 single -chip microcomputer, 18B20 temperature sensor and 1602 LCD screen display etc.After power on, the system into real-time temperature display state, then the temperature 18B20 will read in the single-chip microcomputer and displayed in the LCD screen.System can set upper temperature alarm, when the alarm measured results than the setting measured corresponding alarm, System can provide an interface which sends the temperature to other controller or computer. There is little measuring error, measuring error at ±0.02℃.Key words:Microcontroller;Temperature acquisition;LCD display;Temperatere sensor; Digital thermometer目录第一章绪论 (1)1.1 系统背景 (1)1.2 系统概述 (1)1.2.1 系统功能 (1)1.2.2 系统所用器件及其作用 (1)第二章系统总体设计2.1 系统硬件电路总体设计 (3)2.2系统软件的总体设计 (4)2.3主程序的流程设计与实现程序 (6)3.2.1 主程序的流程设计 (6)3.2.2 主程序的实现程序 (7)第三章主要器件介绍3.1 18B20温度传感器 (8)3.2 1602液晶显示器 (8)第四章系统详细设计厦礴恳蹒骈時盡继價骚。
目录1、绪论1.1 实验内容1.2实验目的1.3 实验原理2、系统硬件组成及基本原理2.1STC89C52单片机介绍2.2 花样流水灯的设计2.3 LED动态扫描显示2.4 定时计数器2.5 4*4独立键盘的设2.6 串口通信的设计2.7 数字温度计的设计3、单片机焊接与系统调试4、总结附录一整体原理图1、绪论1.1 实验内容本学期单片机实验包括六个,分别是花样流水灯实验、LED动态扫描显示实验、定时计数器实验、4*4键盘输入实验、单片机与PC机串口通信以及基于单片机的数字温度计的设计。
1.2 实验目的花样流水灯实验:熟悉LED的显示特点,了解单片机系统实现花样流水灯实验的硬件电路和软件编程技巧;LED动态扫描显示实验:掌握LED动态扫描显示原理,掌握LED动态扫描显示程序设计方法,熟悉LED动态扫描显示硬件设计方法;定时计数器实验:学习单片机内部计数器的使用和编程方法,进一步掌握中断处理程序的编程方法;4*4键盘输入实验:掌握键盘扫描的原理以及十/十六进制的转换,了解单片机输入和输出的过程,以及如何对数据进行采集的;单片机与PC机串口通信:掌握串行口工作方式的程序设计,掌握单片机通讯的编程,了解实现串行口通讯的硬环境,数据格式的协议,数据交换的协议,了解PC机通讯的基本要求;基于单片机的数字温度计的设计:通过对做的设计任务的实现,起到串起所学的数模技术、传感器技术、单片机技术及智能仪器等知识,通过理论联系实际,从题目分析、电路设计调试、程序编制调试到传感器的标定等这一完整的实验过程,培养学生正确的设计思想,使学生充分发挥主观能动性,去独立解决实际问题,以达到提升学生的综合能力、动手能力、文献资料查阅能力的作用。
1.3 实验原理LED动态扫描显示实验:为了节省输出端口数,数码LED显示一班采用动态扫描的方法,将所有数码LED的共阴极接在一个位型输出口上,将所有数码管的相同段接在一起作为字型口,软件控制每个数码LED轮流显示,任一时刻只有一个数码亮,但扫描速度足够快时,视觉效果是8个数码LED同时亮;定时计数器实验:定时和计数的本质是相同的,它们都是对一个输入脉冲进行计数,如果输入脉冲的频率一定,则记录一定个数的脉冲,其所需的时间是一定的,对CLK信号进行“减1计数”。
基于单片机的数字温度计设计与仿真盘桂云(吉首大学物理科学与信息工程学院,湖南吉首416000)摘要本课题以单片机为控制核心,设计了一款数字温度计。
该系统由51单片机、DS18B20温度传感器以及1602 LCD液晶显示屏等部件组成。
系统上电后进入实时温度显示状态,此时将DS18B20中的温度值读到单片机中并将其显示在LCD液晶显示屏上。
系统可以设置上下限报警温度值,当测得结果超过设定值时进行相应的报警,提供一个接口可以将温度值传送给其它控制器或计算机,测量准确且误差小,其误差在±0.02℃。
关键词:单片机;温度采集;LCD显示;温度传感器;数字温度计;Emluater and Design of Digital Thermometer Based onMicrocomputer ControlPanguiyun(College of Physics Science and Information Engineering,JishouUniversity,Jishou,Hunan 416000)AbstractThis topic with the microcontroller as control core , and design a digital thermometer.It consists of 51 single -chip microcomputer, 18B20 temperature sensor and 1602 LCD screen display etc.After power on, the system into real-time temperature display state, then the temperature18B20 will read in the single-chip microcomputer and displayed in the LCD screen.System can set upper temperature alarm, when the alarm measured results than the setting measured corresponding alarm, System can provide an interface which sends the temperature to other controller or computer. There is little measuring error, measuring error at ±0.02℃. Key words:Microcontroller;Temperature acquisition;LCD display;Temperatere sensor;Digital thermometer目录第一章绪论 (1)1.1 系统背景 (1)1.2 系统概述 (1)1.2.1 系统功能 (1)1.2.2 系统所用器件及其作用 (1)第二章系统总体设计2.1 系统硬件电路总体设计 (3)2.2系统软件的总体设计 (4)2.3主程序的流程设计与实现程序 (6)3.2.1 主程序的流程设计 (6)3.2.2 主程序的实现程序 (7)第三章主要器件介绍3.1 18B20温度传感器 (8)3.2 1602液晶显示器……………………………………………………………8第四章系统详细设计4.1控制模块电路设计 (10)4.1.1晶振电路设计 (10)4.1.2复位电路设计 (10)4.2温度传感器模块 (11)4.2.1温度传感器模块电路设计 (11)4.2.2温度传感器模块程序设计 (12)4.3 液晶显示模块 (16)4.3.1液晶显示模块电路设计 (16)4.3.2液晶显示模块程序设计 (17)4.4 键盘输入模块 (17)4.4.1键盘输入模块电路设计 (17)4.4.2键盘输入模块程序设计 (18)4. 5报警模块 (19)4.5.1报警模块电路设计 (19)4.5.1报警模块程序设计 (20)4. 6串行输出模块 (20)第五章软件仿真与测试5.1软件的仿真分析与仿真结果 (21)结束语 (25)参考文献 (26)致谢 (27)附录1:系统电路图 (28)附录2:源程序清单 (29)第一章绪论1.1 系统背景在工农业生产和日常生活中,对温度的测量占据着极其重要地位。
冰箱、空调、烘干机中均用了温度控制系统。
目前,我国单片机的开发应用正在兴起,单片机在机电一体化、智能仪表、工业控制、家用电器等方面的应用成果尤为显著。
本课题基于单片机设计了一款数字温度计。
1.2 系统概述本设计以单片机为控制核心。
其设计通过18B20进行温度采集,采用1602液晶来进行温度显示,有键盘输入和LED二极管进行温度报警功能。
其温度通过MAX232通信方式传送出去,可给另一控制器或计算机进行其它操作用。
硬件总的包括单片机及相应单片机小系统相关元件、18B20温度传感、1602液晶显示屏、三个按键,MAX232电平转换器件和两个LED 二极管。
1.2.1 系统的功能本数字温度计系统主要完成的功能是对测量温度进行显示,其中包括过温报警功能。
具体的功能如下所述:(1)能够实时的测得温度并进行显示,显示的误差在±0.02℃;(2)可以通过键盘输入相应的上下限温度;(3)数字温度计测得的温度值和我们设定的上下限温度都可以在LCD上显示出来。
其中在主界面下是实时显示测得的温度值;(4)当系统测得的温度低于最低温度或高于最高温度时会进行相应的报警;(5)测得温度通过MAX232传送出去,可供其它器件操作。
本数字温度计的工作过程如下:首先通过18B20温度传感器进行温度采集,然后将采集到的数据传送给单片机,单片机将收到的数据进行相应的处理后通过1602液晶显示给用户。
在此过程中如果测得的温度超过了上下限温度时系统会启动报警。
其中上下限温度值可由用户进行设定,如未设定则为系统初始值。
系统还可将温度通过MAX232传送给计算机等进行相应的操作。
1.2.2 系统所用器件及其作用在数字温度计系统中所使用的器件及其作用如下所述:(1)单片机:系统的控制部分,能对采集的温度进行相应处理。
(2)18B20温度传感器:用来采集温度。
(3)1602液晶显示屏:用来显示单片机控制器处理的相应结显。
(4)LED发光二极管:用来进行报警的模拟。
(5)按键:用来输入相应的上下限温度值。
(6)MAX232:进行串行通信的电平转换。
第二章系统总体设计2.1系统硬件电路总体设计数字温度计系统硬件电路按功能可以分为以下几个模块电路:控制模块电路、温度传感器模块电路、液晶显示模块电路、键盘输入模块电路、报警模块、串行通信模块电路。
系统硬件电路总体设计方框图,如图2.1所示:图2.1.2 系统的电路图2.2系统软件的总体设计软件部分即程序编写部分。
为了程序的可读性和独立性,程序的书写分模块书写,且同一个模块放在同一个文件下。
根据此思路,程序分为主程序模块部分、1602液晶显示驱动模块部分、按键模块部分、DS18B20驱动模块部分、报警模块部分、串行输出程序模块和组合程序模块部分。
各部分的联系都通过组合程序模块部分进行组合,而组合程序只给主程序调用。
各程序部分的相关关系如图:各个程序模块设计之间的关系如上图,且在它们的对应关系中还有一个文件名为head .h,此文件用来定义IO端口和进行相关的外部变量和外部函数的声明。
每一个".C"文件前面都会有:#include“head.h”来包含些头文件.各文件的联接通过外部函数和外部变量。
其各部分的外部函数和外部变量声明在head.h文件中。
各程序模块对应的外部函数及外部变量如下:DS18B20驱动程序部分:extern void get_temperature();extern int temperature;1602液晶驱动程序部分:extern void lcd_prints(uchar *strint,uchar x,uchar y);按键模块程序部分:extern void key_scanf();extern uchar key1,key2,key3;报警程序模块部分:extern void compare_temperature();extern void deal_compare_temperature();extern uchar low_flag,high_flag;串行通信模块部分:extern void usart();组合程序部分:extern void dis_temperature(int temp_temperature);extern void main_init();extern void main_scanf_deal();以上列出的各外部函数与外部变量是各个.C文件相互联接的基础,其关系如图2.2.1所示.其中这些外部函数与IO定义都放在head.h文件中.IO 定义列出如下:/*IO口的定义*///******************************************************//******************************************************sbit rs = P2^0;sbit rw = P2^1;sbit en = P2^2;sbit busy_f = P0^7;#define dc_port P1#define lcd_com 0 // Command#define lcd_data 1 // Data#define key P2//按键IO定义sbit B20_IO = P3^7; //温度输入口sbit beer = P3^2; //报警IO口1sbit beer1 = P3^3; //报警IO口2//******************************************************//******************************************************2.3主程序的流程设计与实现程序2.3.1主程序的流程设计由于各个程序都是模块化的设计,因此主程序的工作量就很少且思路也很清析。
它的调用程序都在unite.c文件中。
其程序设计思路如下:图2.3.1主程序流程图2.3.2主程序的实现程序/*********************************************************** *******函数名称:void main()功能说明:主函数入口参数:void*******************************************************************/void main(){main_init();//主程序的初始化部分程序while(1){get_temperature();//获得温度lcd_write(lcd_com,0x01);//清屏lcd_prints(" now temperature",0,0);//第一行的显示dis_temperature(temperature);//显示温度(第二行中)key_scanf();//扫描按键main_scanf_deal();//按键处理compare_temperature();//三个温度比较处理deal_compare_temperature();//处理比较结果进行报警usart();//串行数据传出}}第三章主要器件介绍3.1 18B20温度传感器DS18B20最大的特点是单总线数据传输方式,DS18B20的数据I/O均由同一条线来完成。