1湖南工程学院课程设计课程名称单片机原理与应用课题名称环境温度检测与报警专业电气工程及其自动化班级学号姓名指导教师王迎旭李晓秀汪超赵葵银2012年9月14日2湖南工程学院课程设计任务书课程名称单片机与应用课题环境温度检测与报警专业班级学生姓名学号指导老师王迎旭李晓秀汪超赵葵银审批王迎旭李晓秀汪超赵葵银任务书下达日期2012年9月3日任务完成日期2012年9月14日3设计内容与设计要求设计内容:本课题要求以单片机为核心设计一个环境温度检测与报警系统,要求测温范围为–10~125℃,精度误差在0.1℃以内,LED数码管直读显示,可以由用户自己设定上限温度,如果环境温度超过实际温度或在3秒内温度变化超过5度则会发出声光报警。设计任务包括控制系统硬件设计和应用程序设计。要求焊接好开发板,在开发板上进行调试。设计要求:1)确定系统设计方案;2)进行系统的硬件设计;3)完成必要元器件选择;4)开发板焊接及测试4主要设计条件1、MCS-51单片机实验操作台1台;2、PC机及单片机调试软件;3、开发板1块;4、制作工具1套;5、系统设计所需的元器件。说明书格式封面课程设计任务书目录第1章概述(课题设计的要求、目的及意义)第2章系统总体方案选择与说明(系统硬件电路设计框图与工作原理)第3章硬件电路设计(各部分电路设计、原理、参数计算、I/O分配等)5)系统软件设计及调试;6)系统联调及操作说明7)写说明书5第4章应用软件设计(流程图、算法等)*第5章系统仿真调试第6章硬件调试与结果分析(开发板焊接、性能测试、结果、操作说明)第7章结束语(系统设计小结:已完成的工作、效果、特色、不足与展望)致谢参考文献附录A系统硬件电路原理图附录B程序清单评分表进度安排6设计时间分为二周第一周星期一、上午:布置课题任务,课题介绍及讲课。下午:借阅有关资料,总体方案讨论。星期二、分班级焊接开发板星期三、确定总体方案,学习与设计相关内容。星期四、各部分方案设计,各部分设计。星期五、设计及上机调试。星期六、设计并调试第二周星期一:设计及上机调试。星期二:调试,中期检查。星期三:调试、写说明书。星期四--星期五上午:写说明书、完成电子版并打印成稿。星期五下午:答辩。参考文献[1]王迎旭等.单片机原理及及应用.机械工业出版社.2012年[2]三恒星科技.MCS-51单片机原理与应用实例[M].电子工业出版社.2008年[3]戴仙金.51单片机及其C语言程序开发实例[M].清华大学出版社.2008年[4]陈海宴.51单片机原理及应用——基于KeilC与Proteus[M].北京航空航天大学出版社.2010年7目录第1章概述....................................11.1课题的设计要求、目的及意义...........................1第2章总体方案................................22.1方案的选择...........................................22.2系统结构框图及工作原理...............................3第3章硬件电路设计............................53.1复位电路的设计.......................................53.2时钟振荡电路.........................................53.3显示电路.............................................63.4数字温度传感器DS18B20................................73.5按键查询电路.........................................93.6单片机硬件资源分配..................................17第4章应用软件设计...........................184.1主函数的设计........................................184.2键盘扫描函数的设计..................................194.3读出温度子程序......................................204.4报警子程序..........................................20第5章硬件调试与结果分析.....................215.1调试方法............................................215.2调试中出现的问题及解决办法..........................215.3调试结果............................................21第6章设计总结..............................17参考文献....................................18附录A系统硬件原理图...........................19附录B程序清单.................................208第1章概述1.1课题的设计要求、目的及意义单片机技术作为计算机技术的一个重要分支,广泛应用于工业控制,智能化仪器仪表,家用电器,甚至电子玩具等各个领域,它具有体积小,功能多,价格低廉,使用方便,系统设计灵活等优点,因此越来越受工程技术人员的重视与亲睐。伴随着科学技术和生产的不断发展,需要对各种参数进行温度测量。温度控制和测量在各行各业中发挥着重要的作用。如在日趋发达的工业之中,利用测量与控制温度来保证生产的正常运行。在农业中,用于保证蔬菜大棚的恒温保产等。在单片机温度测量系统中的关键是测量温度、控制温度和保持温度,温度测量是工业对象中主要的被控参数之一,具有现实意义.本课题以单片机为核心,实现温度的检测和控制。用温度感应器件ds18b20模拟温度的输入量,当温度低于25度时,发出长嘀声报警,当温度高于30度时,启动直流电机散热。测量温度范围在0-99度。用ds18b20温度的检测和控制,并用四位LED数码显示管显示各路温度,并且设置按键可实现对温度的报警上下限进行控制.以此简易的温度检测和控制系统来达到初步应用单片机,同时对各门学科知识作一个较好的整合,对单片机在实际温度控制的实现形成较好的概念和理解.9第2章系统总体方案选择与说明2.1方案的选择温度芯片DS18B20测量温度,输出信号全数字化。便于单片机处理及控制,省去传统的测温方法的很多外围电路。且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好。在0—100摄氏度时,最大线形偏差小于1摄氏度。DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计DS18B20和微控制器AT89c52构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。这样,测温系统的结构就比较简单,体积也不大。采用51单片机控制,软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制,而且体积小,硬件实现简单,安装方便。既可以单独对多DS18B20控制工作,还可以与PC机通信上传数据,另外AT89C52在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟.该系统利用AT89C52芯片控制温度传感器DS18B20进行实时温度检测并显示,能够实现快速测量环境温度,并可以根据需要设定上下限报警温度,利用键盘来进行调时和温度查询。这种方法测温装置电路简单、精确度较高、实现方便、软件设计也比较简单,故本次设计采用了此法。102.2系统结构框图及工作原理2.2.1系统原理该数字温度检测系统如图2-2所示有四部分组成:温度检测,显示控制,温度显示,报警。主控制器LED显示温度传感器单片机复位报警按键设置时钟振荡图2-2系统原理(1)温度检测该模块由DS18B20负责对测试点的温度进行测量,单片机89C52对DS18B20进行控制。由于DS18B20只有一根数据线,所以系统中的数据交换,控制都由这根线完成,只需将DS18B20挂接到单片机的一个数据接口就可以直接使用。(2)显示控制由于DS18B20是通过单总线方式与单片机进行通讯的,所以对程序编写的要求比较高。主要的程序流程是这样的:首先由单片机发出对DS18B20进行初始化的信号,在DS18B20初始化成功后,发送指令CC跳过读序列号的操作,接着发送指令44启动温度转换,此时在对DS18B20进行初始11化,在发送指令CC跳过读序列号操作,最后发送指令BE读暂存存储器。至此完成一个周期,当前温度值所对应的二进制编码已经被保存在DS18B20的ROM上,我们只需将ROM上的温度值读取出来,然后转换成相应的十进制,就可以拿来做后面的运算和显示了。(3)温度显示这部分模块由四位八段共阳极的数码管组成,段选部分直接与单片机相连。(4)报警报警装置由蜂鸣器构成,当温度超过设定值时报警。12第3章硬件电路设计3.1复位电路的设计采用47uF的C3和10K的R2可以保证加在引脚上的高电平持续2个机器周期,即使单片机有效地复位。按键可以随时使电路复位,当键按下时1K的R1和10K的R2串联分压使RST为高电平,即复位,如图3-1所示。图3-1复位电路3.2时钟振荡电路时钟电路在单片机系统中起着非常重要的作用,是保证系统正常工作的基础。晶振频率的大小决定了单片机系统工作的快慢。本次设计采用内部方式的外部时钟接法。为达到振荡周期是12MHZ的要求,这里要采用12MHZ的晶振,电容C1、C2对频率有微调作用,故外接晶振时,C1和C2在本设计中选择30pF,振荡频率取12MHz。晶振的两个引脚分别连到XTAL1和XTAL2振荡脉冲输入引脚。具体连接图如图3-2所示:13图3-2时钟振荡电路3.3显示电路本次设计中采用共阴极数码管作为显示器。LED的驱动电路简单,使用方便,具有耗电少、成本低廉、配置简单灵活、安装方便、耐振动、使用寿命长等优点。LED显示器与单片机的接口一般有动态显示与静态显示接口两种电路。本次设计中,由于单片机本身提供的I/O口有限,本次设计采用动态显示,数码管采用的是共阳极接法。用AT89C52的P0口作段码输出时,在本次设计中我们将数码管各段加上拉电阻后接单片机P0口。我们把P2口的输出信号直接接到数码管的位选端作为位选信号,低电平有效,具体连接如图3-3所示。图3-3CRYSTALXTAL1XTAL2143.4数字温度传感器DS18B20本次设计的硬件电路简单,关键的地方在DS18B20,也是最复杂难懂的。温度传感器采用的是DALLAS公司的单总线数字温度传感器DS18B20。它采用独特的单线接口方式,仅需一个信号线发送或接收信息。测量范围为-55℃~125℃,CPU用P3.6口与DS18B20通信,如图3-4-1即为温度传感器。图3-4-1温度传感器下图为DS18B20的内部结构框图图3-4-2DS18B20的内部结构框图C64位ROM和单线接口高速缓存存储器与控制逻辑温度传感器高温触发器TH低温触发器TL配置寄存器8位CRC发生器Vdd1564位ROM的结构开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用一线进行通信的原因。温度报警触发器TH和TL,可通过软件写入户报警上下限。DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的EERAM。高速暂存RAM的结构为8字节的存储器,结构如图3-4所示。表3-4分辨率转换头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。第5个字节,为配置寄存器,它的内容用于确