毕业设计(论文)-基于单片机的温度控制设计.doc_第1页
毕业设计(论文)-基于单片机的温度控制设计.doc_第2页
毕业设计(论文)-基于单片机的温度控制设计.doc_第3页
毕业设计(论文)-基于单片机的温度控制设计.doc_第4页
毕业设计(论文)-基于单片机的温度控制设计.doc_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

西南科技大学高等教育自学考试毕业论文 西南科技大学高等教育自学考试 毕业设计(论文)任务书 题目名称基于单片机的温度控制设计 学生姓名准考证号070114337289 题目来源 教师科研 社会实践 实验室建设 其它 题 目 类 型 理论研究 应用研究 设计开发 其它 选 题 背 景 及 目 的 对大学期间所学的知识进行了一个全面、系统的总结,锻炼理论和实践相 结合的能力,了解电子产品设计的一般设计过程,熟练掌握 Keil C,Proteus 等专业软件,掌握电子电路调试的方法,独立解决设计与调试过程中出现的一 般问题,正确选择元器件与材料,能对设计电路的指标和性能进行测试并提出 改进意见,能查阅各种有关手册和正确编写设计报告。 工 作 任 务 及 要 求 (1) 熟悉单片机芯片,了解单片机指令集和汇编语言。 (2) 熟悉 Proteus 软件,并用来设计应用系统原理图。 (3) 对系统进行分析,画出流程图。 (4) 编写各个流程图中相应模块的程序。 (5) 使用 keil 软件进行调试并和 Proteus 相结合进行相应的仿真。 (6) 将软件和硬件相结合进行相应的编码测试及整个软硬件系统的综合 测试,实现功能,并达到性能要求。 时 间 安 排 1. 开题报告: 2014 年 1 月 6 日 至 2014 年 1 月 16 日。 2. 完成初稿:2014 年 1 月 17 日 至 2014 年 4 月 9 日。 3答 辩:2014 年 月 日。 以上内容由指导教师填写 指导教师 签 字 教师姓名: 年 月 日 助学点 审核 审核意见: 组长签字: 年 月 日 学生接受 任务签字 接受任务时间: 年 月 日 学生签名: 西南科技大学高等教育自学考试毕业论文 摘 要 近年来单片机发展十分迅速,一个以微机应用为主的新技术革命浪潮正在蓬勃兴起, 单片机的应用已经渗透到电力、冶金、化工、建材、机械、食品、石油等各个行业。而 温度的测量及控制变得越来越重要,温度是日常生活中无时不在的物理量,温度的控制 在各个领域都有积极的意义。很多行业中都有大量的用电加热设备,如用于热处理的加 西南科技大学高等教育自学考试毕业论文 热炉,用于融化金属的坩锅电阻炉及各种不同用途的温度箱等,传统的温度采集方法不 仅费时费力,而且精度差,单片机的出现使得温度的采集和数据处理问题能够得到很好 的解决。所以采用单片机对温度进行控制不仅具有控制方便、简单、灵活性大等特点, 而且还可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量。因此,智 能化温度控制技术正被广泛地采用。随着新技术的不断开发与应用,传统的温度采集方 法不仅费时费力,而且精度差,温度是工业对象中的一个重要的被控参数。然而所采用 的测温元件和测量方法也不相同;产品的工艺不同,控制温度的精度也不相同。因此对 数据采集的精度和采用的控制方法也不相同。 本设计详细地讲述了基于单片机 STC89S52 和温度传感器 DS18B20 的温度控制系统的 设计方案与软硬件实现方案。系统采用数字温度传感器 DS18B20 采集温度数据,数码管 同步显示当前测量值,可通过程序对温度进行设定值。当温度低于设定值时,单片机控 制继电器启动加热器加热,同时与它相连的发光二极管亮,当温度高于设定值时,加热 器停止加热,降温继电器工作,同时与它相连的发光二极管亮,从而实现了测量和控制 温度的目的。系统稍微改装可以作为生物培养液温度监控系统,可以做热水器温度调节 系统、实验室温度监控系统等等。系统具有控制方便、结构简单和灵活性大等优点,经 过反复测试,系统能够稳定运行。 关键词: 温度;STC89S52;单片机;控制 ABSTRACT With the development of the society, the control and measure of temperature 西南科技大学高等教育自学考试毕业论文 become more and more important, The temperature is the ever-present physical quantities in daily life, the control of the temperature in various fields have positive significance. Many industry there are a large number of electricity heating equipment, such as to be used in heat treatment furnace, used to melt metal of the crucible resistance furnace and various different uses of temperature box, etc, Useing onolithic control of them has not only control convenient, simple, flexible, but also features could increase the technical indexes of accused of temperature, thus greatly improve the quality of the products. Therefore, intelligent temperature control technology is being widely adopted. The design and implementation of temperature control system based on single chipmicrocontroller AT89S52 and DS18B20 are introduced in this paper. Temperature data are collected by DS18B20, temperature settings and current measurements are displayed by digital tube, the temperature settings can be change by the key-presses with 1 step. The default temperature value is 0123. When the temperature is under the settings, the heater starts with the red-led on,oppositely, the heater stopped heating when the temperature is higher than the set value. System can be as creature nutrient-containing medium temperature monitoring system after being modified slightly, and can do water heater temperature regulation system, lab temperature monitoring system, etc. The system is control convenient, simple, flexibility. After repeated testing, the system can operate stabl. Keyword: temperature; STC89S52; MCS; control 目 录 摘 要 .I 西南科技大学高等教育自学考试毕业论文 ABSTRACT .II 第 1 章 绪论 .1 1.1 温度控制系统设计的背景、发展历史及意义 .1 第 2 章 总体设计方案 .3 2.1 方案一 .3 2.2 方案二 .3 第 3 章 单片机 STC89S52 的结构与原理 .4 3.1 STC89C52 简介.4 3.2 STC89SC52 的引脚说明.5 第 4 章 温度控制的硬件设备 .11 4.1 温度传感器的选择.11 4.1.1 DS18B20 的性能特点 .11 4.1.2 DS18B20 的内部结构 .11 4.1.3 DS18B20 内部结构主要组成部分 .12 4.2 DS18B20 的工作原理.14 4.2.1 DS18B20 的工作时序. .14 4.2.2 DS18B20 的测温原理 .16 4.2.3 DS18B20 的测温流程 .17 第 5 章 系统的硬件设计 .18 5.1 温度采集电路 .18 5.2 数码管的温度显示电路 .18 5.2.1 数码管的分类.18 5.2.2 数码管的驱动方式.18 5.2.3 本设计的数码管驱动.19 5.3 温度控制电路 .20 5.4 晶振电路 .21 5.5 复位电路 .22 第 6 章 系统软件设计 .23 6.1 系统软件设计整体思路 .23 6.2 系统程序的流程图 .23 第 7 章 电路仿真与分析 .29 7.1 仿真软件 .29 7.2 调试 .29 致谢 .31 参考文献 .32 附录一 外文翻译 .27 附录二 部分源程序代码 .41 西南科技大学高等教育自学考试毕业论文 附录三 总体电路图 .51 西南科技大学高等教育自学考试毕业论文 第 1 章 引 言 1.1 温度控制系统设计的背景、发展历史及意义 随着社会的发展,科技的进步,以及测温仪器在各个领域的应用,智能化已是现代 温度控制系统发展的主流方向。特别是近年来,温度控制系统已应用到人们生活的各个 方面,但温度控制一直是一个未开发的领域,却又是与人们息息相关的一个实际问题。 针对这种实际情况,设计一个温度控制系统,具有广泛的应用前景与实际意义。 温度是科学技术中最基本的物理量之一,物理、化学、生物等学科都离不开温度。 在工业生产和实验研究中,像电力、化工、石油、冶金、航空航天、机械制造、粮食存 储、酒类生产等领域内,温度常常是表征对象和过程状态的最重要的参数之一。比如, 发电厂锅炉的温度必须控制在一定的范围之内;许多化学反应的工艺过程必须在适当的 温度下才能正常进行;炼油过程中,原油必须在不同的温度和压力条件下进行分馏才能 得到汽油、柴油、煤油等产品。没有合适的温度环境,许多电子设备就不能正常工作, 粮仓的储粮就会变质霉烂,酒类的品质就没有保障。因此,各行各业对温度控制的要求 都越来越高。可见,温度的测量和控制是非常重要的。 单片机在电子产品中的应用已经越来越广泛,在很多的电子产品中也用到了温度 检测和温度控制。随着温度控制器应用范围的日益广泛和多样,各种适用于不同场合的 智能温度控制器应运而生。温度控制系统广泛应用于社会生活的各个领域 ,如家电、汽 车、材料、电力电子等 ,常用的控制电路根据应用场合和所要求的性能指标有所不同 , 在工业企业中,如何提高温度控制对象的运行性能一直以来都是控制人员和现场技术人 员努力解决的问题。这类控制对象惯性大,滞后现象严重,存在很多不确定的因素,难以 建立精确的数学模型,从而导致控制系统性能不佳,甚至出现控制不稳定、失控现象。传 统的继电器调温电路简单实用 ,但由于继电器动作频繁 ,可能会因触点不良而影响正常 工作。控制领域还大量采用传统的 PID 控制方式,但 PID 控制对象的模型难以建立,并且 当扰动因素不明确时,参数调整不便仍是普遍存在的问题。而采用数字温度传感器 DS18B20,因其内部集成了 A/D 转换器,使得电路结构更加简单,而且减少了温度测量 转换时的精度损失,使得测量温度更加精确。数字温度传感器 DS18B20 只用一个引脚即 可与单片机进行通信,大大减少了接线的麻烦,使得单片机更加具有扩展性。由于 DS18B20 芯片的小型化,更加可以通过单跳数据线就可以和主电路连接,故可以把数字 西南科技大学高等教育自学考试毕业论文 温度传感器 DS18B20 做成探头,探入到狭小的地方,增加了实用性。更能串接多个数字 温度传感器 DS18B20 进行范围的温度检测。 西南科技大学高等教育自学考试毕业论文 第 2 章 总体设计方案 2.1 方案一 测温电路的设计,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度 变化的电压或电流采集过来,进行 A/D 转换后,就可以用单片机进行数据的处理,在显 示电路上,就可以将被测温度显示出来,这种设计需要用到 A/D 转换电路,感温电路比 较麻烦。 2.2 方案二 考虑使用温度传感器,结合单片机电路设计,温度传感器的选择,采用温度芯片 DS18B20 测量温度,该芯片的物理化学性能很稳定,它能用做工业测温元件,且此元件线 性较好。在 0-100 摄氏度时,最大线性偏差小于 1 摄氏度。该芯片直接向单片机传输数 字信号,便于单片机处理及控制。本制作的最大特点之一是直接采用温度芯片对为温度 进行测量,使数据传输和处理简单化,直接读取被测温度值,之后进行转换,依次完成 设计要求。 比较以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计容易实现, 故实际设计中拟采用方案二。电路设计方框图如图 2-1 所示,它主要由四部分组成:控 制部分主芯片采用单片机 AT89S52显示部分采用四位一体共阳 LED 数码管以动态扫描方 式实现温度显示;温度采集部分采用 DS18B20 温度传感器继电器控制大功率电器。 DS18B20 LED 显示 制冷继电器 工作 STCT89S5 2 单片机 图 21 温度控制系统的总体设计方案 加热继电器 工作 晶振电路 复位电路 西南科技大学高等教育自学考试毕业论文 第 3 章 单片机 STC89C52 的结构与原理 3.1STC89C52 简介 STC89S52 单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单片机,指令 代码完全兼容传统 8051 单片机,12 时钟/机器周期和 6 时钟/机器周期可以任意选择。 主要特性如下: 1. 增强型 8051 单片机,6 时钟/机器周期和 12 时钟/机器周期可以任意选择, 指令代码完全兼容传统 8051. 2. 工作电压:5.5V3.3V(5V 单片机)/3.8V2.0V(3V 单片机) 3. 工作频率范围:040MHz,相当于普通 8051 的 080MHz,实际工作频率可 达 48MHz 4. 用户应用程序空间为 8K 字节 5. 片上集成 512 字节 RAM 6. 通用 I/O 口(32 个) ,复位后为:P1/P2/P3/P4 是准双向口/弱上拉,P0 口是 漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为 I/O 口用时,需 加上拉电阻。 7. ISP(在系统可编程)/IAP(在应用可编程) ,无需专用编程器,无需专用仿 真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程序,数秒即可完 成一片 8. 具有 EEPROM 功能 9. 具有看门狗功能 10. 共 3 个 16 位定时器/计数器。即定时器 T0、T1、T2 11. 外部中断 4 路,下降沿中断或低电平触发电路,Power Down 模式可由外部中 断低电平触发中断方式唤醒 12. 通用异步串行口(UART) ,还可用定时器软件实现多个 UART 13. 工作温度范围:-40+85(工业级)/075(商业级) 14. PDIP 封装 STC89C52RC 单片机的工作模式 掉电模式:典型功耗11 主机写1时序 主机写0时序 图 45 读时序 总线器件仅在主机发出读时序是,才向主机传输数据,所以,在主机发出读数据命令 西南科技大学高等教育自学考试毕业论文 后,必须马上产生读时序,以便从机能够传输数据。所有读时序至少需要60us,且在2次 独立的读时序之间至少需要1us的恢复时间。每个读时序都由主机发起,至少拉低总线 1us。主机在读时序期间必须释放总线,并且在时序起始后的15us之内采样总线状态。主 机输出低电平延时2us,然后主机转入输入模式延时12us,然后读取总线当前电平,然后 延时50us。 4.2.2 DS18B20 的测温原理 每一片 DSl8B20 在其 ROM 中都存有其唯一的 48 位序列号,在出厂前已写入片内 ROM 中。主机在进入操作程序前必须用读 ROM(33H)命令将该 DSl8B20 的序列号读出。 程序可以先跳过 ROM,启动所有 DSl8B20 进行温度变换,之后通过匹配 ROM,再逐一 地读回每个 DSl8B20 的温度数据。 DS18B20 的测温原理如图 4-9 所示,图中低温度系数晶振的振荡频率受温度的影响很 小,用于产生固定频率的脉冲信号送给减法计数器 1,高温度系数晶振随温度变化其震荡 频率明显改变,所产生的信号作为减法计数器 2 的脉冲输入,图中还隐含着计数门,当 计数门打开时,DS18B20 就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温 度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55 所 对应的基数分别置入减法计数器 1 和温度寄存器中,减法计数器 1 和温度寄存器被预置 在-55 所对应的一个基数值。减法计数器 1 对低温度系数晶振产生的脉冲信号进行减 法计数,当减法计数器 1 的预置值减到 0 时温度寄存器的值将加 1,减法计数器 1 的预置 将重新被装入,减法计数器 1 重新开始对低温度系数晶振产生的脉冲信号进行计数,如 此循环直到减法计数器 2 计数到 0 时,停止温度寄存器值的累加,此时温度寄存器中的 数值即为所测温度。图 4-9 中的斜率累加器用于补偿和修正测温过程中的非线性,其输 出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存 器值达到被测温度值。 表 4-8 ROM 操作命令 指令约定代码功 能 读 ROM 33H读 DS18B20 ROM 中的编码 符合 ROM 55H 发出此命令之后,接着发出 64 位 ROM 编码,访问单线 总线上与该编码相对应的 DS18B20 使之作出响应,为下 一步对该 DS18B20 的读写作准备 搜索 ROM0F0H用于确定挂接在同一总线上 DS18B20 的个数和识别 64 位 ROM 地址,为操作各器件作好准备 西南科技大学高等教育自学考试毕业论文 跳过 ROM0CCH忽略 64 位 ROM 地址,直接向 DS18B20 发温度变换命令, 适用于单片工作 续表 48 告警搜索命令0ECH执行后,只有温度超过设定值上限或者下限的片子才 做出响应 温度变换44H启动 DS18B20 进行温度转换,转换时间最长为 500MS,结果存入内部 9 字节 RAM 中 读暂器0BEH读内部 RAM 中 9 字节的内容 写暂存器4EH发出向内部 RAM 的第 3,4 字节写上、下限温度数据 命令,紧跟读命令之后,是传送两字节的数据 复制暂存器48H将 E2PRAM 中第 3,4 字节内容复制到 E2PRAM 中 重调 E2PRAM0BBH将 E2PRAM 中内容恢复到 RAM 中的第 3,4 字节 读 供 电方 式0B4H读 DS18B20 的供电模式,寄生供电时 DS18B20 发送 “0” ,外接电源供电 DS18B20 发送“1” 另外,由于 DS18B20 单线通信功能是分时完成的,他有严格的时隙概念,因此读写 时序很重要。系统对 DS18B20 的各种操作必须按协议进行。操作协议为:初始化 DS18B20(发复位脉冲)发 ROM 功能命令发存储器操作命令处理数据。 减法计数器 斜坡累加器 减到 0 减法计数器 预 置 低温度系数 振 荡 器 高温度系数 振 荡 器 计数比较器 预 置 温度寄存器 减到 0 图 4-6 测温原理内部装置 4.2.3 DS18B20 的测温流程 DS18B20 的测温流程如图 4-7 所示 西南科技大学高等教育自学考试毕业论文 初始化 DS18B20 跳过 ROM 匹配 温度变换延时 1S 跳过 ROM 匹配 读暂存器转换成显示码数码管显示 图 4-7 DS18B20 的测温流程 第 5 章 系统的硬件设计 5.1 温度采集电路 数据采集电路如图 5-1 所示,由温度传感器 DS18B20 采集被控制对象的实时温度, 提供给 AT89S52 的 P3.5 口作为数据输入。在本次设计中我们所控的对象为所处室温,当 然作为改进我们可以把传感器与电路板分离,由数据线相连进行通讯,便于测量多种对 象。 图 5-1 单片机与 DS18B20 的连接 5.2 数码管的温度显示电路 5.2.1 数码管的分类 数码管是一种半导体发光器件,其基本单元是发光二极管。 数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光 二极管单元(多一个小数点显示) ;按能显示多少个“8”可分为 1 位,2 位等数码管;按 发光二极管单元连接方式分为共阳和共阴数码管。共阳数码管是指将所有发光二极管的 西南科技大学高等教育自学考试毕业论文 阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极 COM 接到 +5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段为的阳极 为高电平时,相应字段就不亮。共阴数码管是将所有发光数码管的阴极接到一起形成公 共阴极的数码管。共阴数码管在应用时将公共极 COM 接到低地线 GND 上,当某一字段发 光二极管的 阳极为高电平时,相应字段就点亮,当某一字段的阳极为低电平时,相应字段就不亮。 5.2.2 数码管的驱动方式 1)静态显示驱动:静态驱动也成直流驱动,静态驱动是指每个数码管的每一个段码 都由一个片机的 I/O 端口进行驱动,或使用 BCD 码二-十进制译码器译码进行驱动。静态 驱动的优点是编程简单,显示亮度高,缺点是占用 I/O 口端口多,如驱动 5 个数码管静 态显示则需要 40 根 I/O 口驱动,可用的只有 32 个,实际应用必须增加译码驱动器进行 驱动,增加了硬件电路的复杂性。 2)动态显示驱动:数码管动态显示接口是单片机应用最为广泛的他一种显示方式之 一,动态显示是将所有的数码管的 8 个显示笔画“a,b,c,d,e,f,g,dp”的同名端连接在 一起,另外为每个数码管的公共极增加位选通控制电路,位选通由各自独立的 I/O 线控 制,当单片机的输出字形码时,所有数码管都接受相同的字形码,但究竟是哪个会显示 出字形,取决于单片机对位选通 COM 端电路的控制,通过分时轮流控制各个数码管的 COM 端的控制,实现轮流显示,在这个过程中,每个数码管的点亮时间位 1-2ms,由于人的数 据额暂留现象及发光二极管的余辉效应,尽管实际各位数码管并非同时点亮,但扫描速 度够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,效果与静态显示一样, 能够节省大量的 I/O 口,而且功耗低。 5.2.3 本设计的数码显示 本设计的显示采用的是动态显示。连接方法是将每个二极管的同名端连在一起,而 每个显示器的公共极 COM 各自独立的接受 I/O 线控制,CPU 向字段输出端口输出字型码, 所有显示器接受到相同的字符,而要使用哪个显示器要取决于他们的 COM 的电平,而这 段是由 I/O 端控制的,由单片机输出。数码管与单片机之间用电阻连接,位选端通过三极 管与 I/O 连接,如下图 5-2 所示。 西南科技大学高等教育自学考试毕业论文 图 5-3 数码管的显示电路 5.3 温度控制电路 温度分为高低温控制。设计所达到的效果是,我们的单片机设置一个固定的温度范 围,当温度传感器测量的温度高于我们设定的最高数值时,这时单片机指令控制端口产 生一个低电平信号送给固态继电器,使继电器的产开开关闭合,使开关打开通电,控制 一个降温装置的开启(本设计考虑到成本和技术问题,采用电风扇进行降温控制)。相 反,当温度传感器测量的温度低于设置的最低温度范围时,这时要与最低温度作比较, 低于 5 度以内的,单片机控制的 P1.0 端口产生低电平送给继电器,从而控制加热装置进 行加热(本设计采用点灯泡加热),低于 5-10 度时,单片机的 P1.0 和 P1.1 变低电平, 控制两个电灯泡加热,低于 10 度以上,同上开启三台加热装置加热。 控制电路的原理图如 5-4 所示,继电器接三极管的集电极,之所以采用三极管,就 是继电器一般是需要驱动电压的,而单片机的管脚不能直接提供很高的电压,这样就会 导致即使单片机送出了低电平也无法将继电器的开关打开,当接上三极管后就能将输入 信号的发送到继电器当中,驱动开关使温度调节器改变温度。但考虑到实际情况:当线 圈得电,这时继电器开关闭合,电路就处于工作状态。当线圈失电,开关断开电路不工 作。但这时出现一个问题,线圈可以储存能量的(线圈会阻止电流的突变,也就是电磁 感应作用,即电流只能慢慢增大和减少),如果这时一下使线圈断电,它两端就会产生 很大的电压,这样就可能使线圈损坏,使相连接的元器件击穿。这时,我们要在线圈两 端接上二极管,便可以使它产生一个回路(断电时相当于在线圈两端接根短路线),使 线圈储存的能量放完。这个二极管在这里起到续流的作用,我们通常称它为续流二极管。 (附:电容两端的电压不能突变,电感两端的电流不能突变) 西南科技大学高等教育自学考试毕业论文 图 5-4 继电器的控制电路 5.4 晶振电路 在 MCS-51 系列单片机内部有一个时钟电路,其核心是一个高增益单极反相放大器, 将晶体振荡器提供的振荡信号放大。XTAL1 引脚和 XTAL2 引脚就分别是此放大器的输 入端和输出端。 单片机内部虽然有这个时钟电路,但要形成时钟,必须外接附加电路。用不用这个 内部放大器,就形成了单片机时钟产生的不同方式:若采用这个放大器,即为内部方式; 若采用外部放大器,即为外部方式。本系统采用内部方式,振荡器在加电 10ms 开始起振, XTAL2 输出 3V 左右的正弦波。 晶振频率可以在 1.212MHz 之间任选,由于制造工艺的改进,有些单片机的振荡频 率范围正向两端延伸,可达到 40MHz。振荡频率越高表示单片机的运行速度越快,但同 时对存储器的速度和印刷电路板的要求也就越高。如果存储器的存储速度跟不上的话, 再快的 CPU 也是没用。 这个并联谐振电路对电容的值没有严格的要求,但电容的大小多少会影响振荡器的 稳定性、振荡器频率的高低、起振的快速性等。所以一般外接晶体时,C1、C2 的值通常 选为 20100pF,在 6070pF 时振荡器有较高的频率稳定性。 本系统选用石英晶体振荡器,晶振频率为 12MHz,C1、C2 的值为 30PF,在设计电路 板时,晶振、电容等均应尽可能靠近芯片,以减小分布电容,进一步保证振荡器的稳定 性。 西南科技大学高等教育自学考试毕业论文 图 5-5 晶振电路 5.5 复位电路 图 5-6 复位电路 单片机复位电路要求有一个持续时间,加上电容可以利用其两端电压不能突变的特 性,使复位电平维持一定时间,使单片机复位。单片机一般有两种复位方式:上电复位, 在系统一上电时利用电容两端电压不能突变的原理给系统一个短时的高电平;按键复位, 通过按键接通高电平给系统复位。本设计中采用的是上电复位和按键复位同时有效。 西南科技大学高等教育自学考试毕业论文 第 6 章 系统软件设计 6.1 系统软件设计整体思路 应用系统要完成各项功能,首先必须有较完善的硬件作保证。同时还必须得到相应 设计合理的软件的支持,尤其是微机应用高速发展的今天,许多由硬件完成的工作,都 可通过软件编程而代替,甚至有些必须采用很复杂的硬件电路才能完成的工作,用软件 编程有时会变得很简单,如数字滤波,信号处理等。因此充分利用其内部丰富的硬件资 源和软件资源,采用与 C52 系列单片机相对应的 51 汇编语言和结构化程序设计方法进行 软件编程。 程序设计语言有三种:机器语言、汇编语言和高级语言。机器语言是机器唯一能 “懂”的语言,用汇编语言或高级语言编写的程序(称为源程序)最终都必须翻译成机 器语言的程序(成为目标程序) ,计算机才能“看懂” ,然后逐一执行。 高级语言是面向问题和计算过程的语言,它可通过于各种不同的计算机,用户编程 时不必仔细了解所用的计算机的具体性能与指令系统,而且语句的功能强,常常一个语 句已相当于很多条计算机指令,于是用高级语言编制程序的速度比较快,也便于学习和 交流,但是本系统却选用了汇编语言。原因在于,本系统是编制程序工作量不大、规模 较小的单片机微控制系统,使用汇编语言可以不用像高级语言那样占用较多的存储空间, 适合于存储容量较小的系统。同时,本系统对位处理要求很高,需要解决大量的逻辑控 制问题。 MCS51 指令系统的指令长度较短,它在存储空间和执行时间方面具有较高的效率, 编成的程序占用内存单元少,执行也非常的快捷,与本系统的应用要求很适合。而且 MCS51 指令系统有丰富的位操作(或称位处理)指令,可以形成一个相当完整的位操作 指令子集,这是 MCS51 指令系统主要的优点之一。对于要求反应灵敏与控制及时的工 西南科技大学高等教育自学考试毕业论文 控、检测等实时控制系统以及要求体积小、系统小的许多“电脑化”产品,可以充分体 现出汇编语言简明、整齐、执行时间短和易于使用的特点。 本设计的软件包括主程序、读出温度子程序、复位应答子程序、控制子程序、以及 有关 DS18B20 的程序(初始化子程序、写程序和读程序) 。 6.2 系统程序流程图 1 1)主程序 主程序的主要功能是负责温度的实时显示,读出并处理 DS18B20 的测量的当前温度 值,温度测量每 1s 进行一次。这样可以在一秒之内测量一次被测温度,其程序流程见图 6-1 所示。 通过调用读温度子程序把存入内存储中的整数部分与小数部分分开存放在不同的两 个单元中,然后通过调用显示子程序显示出来。 图 6-1 主程序流程图 2 2)读出温度子程序 读出温度子程序的主要功能是读出 RAM 中的 9 字节,在读出时需进行 CRC 校验,校 验有错时不进行温度数据的改写。 DS18B20 的各个命令对时序的要求特别严格,所以必须按照所要求的时序才能达到预 期的目的,同时,要注意读进来的是高位在后低位在前。 3 3)写入子程序 DS18B20 的写入程序也有严格的要求,首先进位清零,如果进位没有清零,当温度不 在设定的范围内,不会进行声光报警. 4)系统总的流程图 西南科技大学高等教育自学考试毕业论文 本设计主要实现的是在一个封闭的空间的温度的控制,设计总流程如图 6-4 所示,软 件实现的主要功能是上电显示 8888,然后实时显示温度,每按一下复位键,也显示 8888,因设计中用的是非自锁开关,松手后,立即显示当前温度,当前温度与设置的温 度上下限进行比较,当高于上限时,单片机控制端为低电平,相应的继电器控制打开, 当低于下限时,另一继电器开启。 DS18B20 复位、应答子程序 跳过 ROM 匹配命令 写入子程序 温度转换命令 写入子程序 显示子程序(延时) DS18B20 复位、应答子程序 跳过 ROM 匹配命令 写入子程序 读温度命令子程序 终 止 西南科技大学高等教育自学考试毕业论文 图 6-2 读出温度字程序 图 6-3 写入温度子程序 P3.5 清 0 延时 1US 带进位右移 延 75US P3.5 置 1 R2 是为 0 终止 开始 进位 C 清零 西南科技大学高等教育自学考试毕业论文 开 始 初始化 DS18B20 显示当前温度 判断当前温度值 超过设定 温度上限 启动风扇 降低温度 红灯亮 设定温度上、下限 启动电灯泡 升高温度 是 否 低于设定 温度下限 是 红灯亮 否 6-4 系统总流程图 5)显示程序设计 显示程序采用动态扫描。显示精确到小数点后一位,故在显示程序中,需要对输入 的数据进行拆数,拆成个位,十位。然后依次开个位、十位选通端进行显示,在选通十 位的同时将小数点显示出来。连续的动态扫描,轮流向各位数码管送出字形码和相应的 位选,利用发光管的余辉和人眼视觉暂留作用,使人感觉是一组稳定的数据显示。程序 循环检测是否有按键信号,执行相应处理,最后通过显示程序显示相应的电压数值。 西南科技大学高等教育自学考试毕业论文 P0 口送出数据 查表 依次开选通位, 进行显示 返回 图6-5 显示子程序流程图 显示开始 西南科技大学高等教育自学考试毕业论文 第 7 章 电路仿真与分析 7.1 仿真软件 MCS-51 系列单片机在很多产品中得到了广泛的应用。在具体的工程实践中,单片机 应用技术所涉及的实践环节较多,且硬件投入较大,如果因为控制方案有误而进行相应 的开发设计,会浪费较多的时间和经费。Proteus 仿真软件很好地解决了这些问题,它可 以像 Protel 一样绘制硬件原理图并实现硬件调试,再与 Keil 编程软件进行联调,实现对 控制方案的验证。 Keil 是德国 Keil 公司开发的单片机编译器,是目前最好的 51 单片机开发工具之一, 可以用来编译 C 源代码和汇编源程序、连接和重定位目标文件和库文件、创建 HEX 文件、 调试目标程序等,是一种集成化的文件管理编译环境。 7.2 调试 主程序的功能是:启动 DS18B20 测量温度,将测量值与给定值进行比较,若测得温 度小于设定值,则进入加热阶段,置 P2.0 低电平,P2.1 高电平。启动升温继电器。这期 间继续对温度进行监测,直到温度在设定范围内,置 P2.0 高电平,P2.1 为高电平,关闭 升温继电器,等待下一次的启动命令。当测得温度大于设定值,则进入降温阶段,则置 P2.1 为低电平,启动降温继电器。这期间继续对温度进行监测,直到温度在设定范围内, 置 P2.1 为高电平断开,关闭风扇,等待下一次的启动命令。图 7-1 为在温度低于设置的 最低限 10 度时,升温继电器工作,与其相连的发光二极管亮。 西南科技大学高等教育自学考试毕业论文 图 7-1 调试结果 西南科技大学高等教育自学考试毕业论文 致谢 首先要衷心感谢的是我的指导教师韩红玲老师!韩红玲老师很忙,但她仍认真辅导 我,即便我问的问题与我毕业设计无关的,她也乐意回答我,这让我很感动。在我学习 期间不仅传授了做学问的秘诀,还传授了做人的准则,这些都将使我终生受益。我愿借 此机会向老师表示衷心的感谢! 其次感谢同学对我的帮助,在设计中,我遇到了许多问题,一些问题以前从没遇到 过,在同学和老师的帮助下使我学会了更多分析问题和解决问题的方法,焊板子和硬软 件调试过程中,周围同学也帮我查找问题并给出相应的建议,在此,特表示感谢。 其次要感谢所有教育过我的老师!您们传授给我的专业知识是我不断成长的源泉, 也是完成本论文的基础。我还要向关心和支持我学习的朋友们表示真挚的谢意!感谢他 们对我的关心、关注和支持! 我愿在未来的学习过程中,以更加丰厚的成果来答谢曾经关心、帮助和支持过我的 所有领导、老师、同学和朋友。用自己的努力学习和辛勤工作来回报你们。 参考文献 1李朝青,单片机原理及接口技术(简明修订版)M. 北京:北京航空航天大学出版社, 1998 2李广弟.单片机基础M. 北京:北京航空航天大学出版社,1994 3金伟正.单线数字温度传感器的原理与应用J.电子技术与应用,2000 4李 钢.1-Wire 总线数字温度传感器 DS18B20 原理及应用.现代电子技术J,2005 5. 陈跃东.DS18B20 集成温度传感器原理与应用J.安徽机电学院学报,2002 6. 阎石.数字电子技术基础(第三版)M. 北京:高等教育出版社,1989 7Proteus 软件,“资料下载” 8 9童诗白 华成英, 模拟电子技术基础 ,高等教育出版社,2003 年 10. 刘守义, 单片机应用技术 ,西安电子科技大学出版社,2002 年 西南科技大学高等教育自学考试毕业论文 附录一 外文原文 STC89S52 Featur

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论