单片机温度检测课程设计.doc_第1页
单片机温度检测课程设计.doc_第2页
单片机温度检测课程设计.doc_第3页
单片机温度检测课程设计.doc_第4页
单片机温度检测课程设计.doc_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

键入文字 湖南工程学院课 程 设 计课程名称 单片机原理与应用 课题名称 温度检测设计 专 业 电气工程及其自动化 班 级 电气1005 学 号 201001010515 姓 名 周 敏 指导教师_ 李世军_ 2013年 6 月25日湖南工程学院课 程 设 计 任 务 书课程名称 单片机原理与应用 课 题 温度检测设计 专业班级 电气1005 学生姓名 周 敏 学 号 201001010515 指导老师 李世军 审 批 任务书下达日期 2013年6 月 7 日任务书完成日期 2013年 6月 25日设计内容与设计要求设计内容: 本课题以单片机为核心,实现设计温度的检测。用可调电阻调节电压值(0-5v)作为模拟温度的输入量,当温度低于30度时,发出长嘀声报警和光报警,当温度高于60度时,启动直流电机散热。测量温度范围在0-99度。1、1路模拟电压输入,电压范围0-5v;2、通过两位led数码管显示其转换的数字量(00ffh) 3、当其转换的数字量为(00-4dh),则通过发光二极管闪烁报警,当其转换数字量为(9a-ffh)时,启动直流电机散热。设计要求:1)确定系统设计方案; 2)进行系统的硬件设计;3)完成必要的参数计算与元器件选择;4)完成应用程序设计;5)进行单元电路及应用程序的调试;6)写出使用说明书。主 要 设 计 条 件1、mcs-51单片机实验操作台1台;2、pc机及单片机调试软件;3、单片机应用系统板1套;4、制作工具1套;5、系统设计所需的元器件。 说 明 书 格 式1. 课程设计任务书2. 目录3. 说明书内容1)课题的设计要求、目的、意义2)系统总体方案选择与说明3)系统结构框图与工作原理4)各单元硬件设计说明及计算方法5)软件设计与说明(包括流程图)6)调试结果与必要的调试说明7)使用说明8)程序清单9)总结10)参考文献附录附录a 系统原理图附录b 程序清单评分表温度检测设计【摘 要】随着科技的不断进步,在工业生产中温度是常用的被控参数,而采用单片机来对这些被控参数进行控制已成为当今的主流。本文介绍了数字温度测量及自动控制系统的设计。本文采用单片机来实现对温度的控制。它的主要组成部分有:at89c51单片机、温度传感器、显示电路、温度控制电路。它可以实时的显示和设定温度,实现对温度的自动控制。通过测试表明,本设计对温度的控制有方便、简单的特点,从而大幅提高了被控温度的技术指标。目录摘要 1第1章、设计目的 3第2章、设计思路 42.1 系统框架图 42.2 工作原理 4第3章、主元件介绍 63.1 at89c51 63.2 adc0808 83.3 led显示器 9第4章、系统的主程序设计 114.1系统总流程图 .114.2系统仿真12总结 13附录 14参考文献 19 第1章 设计目的温度控制广泛应用于人们的生产和生活中,人们使用温度计来采集温度,通过人工操作加热、通风和降温设备来控制温度,这样不但控制精度低、实时性差,而且操作人员的劳动强度大。即使有些用户采用半导体二极管作温度传感器,但由于其互换性差,效果也不理想。在某些行业中对温度的要求较高,由于工作环境温度不合理而引发的事故时有发生。对工业生产可靠进行造成影响,甚至操作人员的安全。为了避免这些缺点,需要在某些特定的环境里安装数字温度测量及控制设备。本设计由于采用了新型单片机对温度进行控制,以其测量精度高,操作简单。可运行性强,价格低廉等优点,特别适用于生活,医疗,工业生产等方面的温度测量及控制。 本设计是一个数字温度测量及控制系统,能测柜内的温度,并能在超限的情况下进行控制、调整,并报警。保证环境保持在限定的温度中第2章 设计思路2.1 系统框架图利用可调电阻调节电压值(0-5v)作为模拟温度的输入量,当温度低于30度时,发出长嘀声报警和光报警,当温度高于60度时,启动直流电机散热。测量温度范围在0-99度。通过两位led数码管显示其转换的数字量,同时启动报警系统,如图2-1所示:at89c51led显示a/d复位电路晶振电路等温度检测电压输入报警系统图2-1系统框架图2.2 工作原理(1)、1路模拟电压输入,电压范围0-5v;(2)、通过两位led数码管显示其转换的数字量(00ffh)(3)、当其转换的数字量为(00-4dh),则通过发光二极管闪烁报警,当其转换数字量为(9a-ffh)时,启动直流电机散热。工作原理图如下图所示:led显示器7seg-mpx4-caat89c51adc0808电位计模 拟 信 号电压输入图2-2 工作原理图第3章 主要元器件介绍3.1 at89c51 at89c51是一种带4k字节闪烁可编程可擦除只读存储器(fperomfalsh programmable and erasable read only memory)的低电压,高性能cmos8位微处理器,俗称单片机。该器件采用atmel高密度非易失存储器制造技术制造,与工业标准的mcs-51 ? 指令集和输出管脚相兼容。由于将多功能8位cpu和闪烁存储器组合在单个芯片中,atmel的at89c51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。at89c51有40个引脚,32个外部双向输入/输出(i/o)端口,同时内含2个外中断口,2个16位可编程定时计数器2个全双工串行通信口,片上flash允许程序存储器在系统可编程,亦适于常规编程器。其将通用的微处理器和flash存储器结合在一起,特别是可反复擦写的flash存储器可有效地降低开发成本。其芯片引脚图如下:图3-1 at89c51引脚图单片机管脚说明 (1)vcc:供电电压。 (2)gnd:接地。 (3)p0口:p0口为一个8位漏级开路双向i/o口,每脚可吸收8ttl门流。当p1口的管脚第一次写1时,被定义为高阻输入。p0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在fiash编程时,p0 口作为原码输入口,当fiash进行校验时,p0输出原码,此时p0外部必须被拉高。 (4)p1口:p1口是一个内部提供上拉电阻的8位双向i/o口,p1口缓冲器能接收输出4ttl门电流。p1口管脚写入1后,被内部上拉为高,可用作输入,p1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在flash编程和校验时,p1口作为第八位地址接收。 (5)p2口:p2口为一个内部上拉电阻的8位双向i/o口,p2口缓冲器可接收,输出4个ttl门电流,当p2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,p2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。p2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,p2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,p2口输出其特殊功能寄存器的内容。p2口在flash编程和校验时接收高八位地址信号和控制信号。 (6)p3口:p3口管脚是8个带内部上拉电阻的双向i/o口,可接收输出4个ttl门电流。当p3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,p3口将输出电流(ill)这是由于上拉的缘故。(7)p3口也可作为at89s51的一些特殊功能口,如下表3-1所示: 表1-1 p3口第二功能 p3口引脚 第二功能 p3.0 rxd(串行口输入) p3.1 txd(串行口输出) p3.2 int0(外部中断0输入) p3.3 int1(外部中断1输入) p3.4 t0(定时器0外部脉冲输入) p3.5 t1(定时器1外部脉冲输入) p3.6 wr(外部数据存储器写脉冲输出) p3.7 rd(外部数据存储器读脉冲输出) p3口同时为闪烁编程和编程校验接收一些控制信号。(8)xtal1:反向振荡放大器的输入及内部时钟工作电路的输入。 xtal2:来自反向振荡器的输出。 xtal1xtal2 一般是用外接晶振。3.2 adc0808adc0808是采样分辨率为8位的、以逐次逼近原理进行模/数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行a/d转换。adc0808是adc0809的简化版本,功能基本相同。一般在硬件仿真时采用adc0808进行a/d转换,实际使用时采用adc0809进行a/d转换。内部结构: adc0808 是 cmos 单片型逐次逼近式 ad 转换器,它有 8 路模拟开关、地址锁存与译码器、比较器、8 位开关树型 a/d 转换器。引脚功能(外部特性) adc0808 芯片有 28 条引脚,采用双列直插式封装,如下图所示。图3-2 adc0808 引脚图各引脚功能如下: 15 和 2628(in0in7):8 路模拟量输入端。 8、14、15 和 1721:8 位数字量输出端。 22(ale):地址锁存允许信号,输入,高电平有效。 6(start): ad 转换启动脉冲输入端,输入一个正脉冲(至少 100ns 宽)使其启动(脉冲上升沿使 0809 复位,下降沿启动a/d 转换)。 7(eoc): ad 转换结束信号,输出,当 ad 转换结束时,此端输出一个高电平(转换期间一直为低电平)。 9(oe):数据输出允许信号,输入,高电平有效。当 ad转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。 10(clk):时钟脉冲输入端。要求时钟频率不高于 640khz。 12(vref()和 16(vref(-):参考电压输入端 11(vcc):主电源输入端。 13(gnd):地。 2325(adda、addb、addc):3 位地址输入线,用于选通 8 路模拟输入中的一路 3.3. led 显示器 采用传统的七段数码 led 显示器。led 虽然价格便宜,但在现代的许多仪表、各种电子产品中逐渐被 lcd 所取代。 采用 lcd 液晶屏进行显示。lcd 液晶显示器是一种低压、微功耗的显示器件,只要 23 伏就可以工作,工作电流仅为几微安,是任何显示器无法比拟的,同时可以显示大量信息,除数字外,还可以显示文字、曲线,比传统的数码 led 显示器显示的界面有了质的提高。在仪表和低功耗应用系统中得到了广泛的应用。优点为: 1 显示质量高,由于液晶显示器的每一个点收到信号后就一直保持那种色彩和亮度恒定发光,因此液晶显示器的画质高而且不会闪烁。 2 数字式接口,液晶显示器都是数字式的,和单片机的接口简单操作也很方便。 3 功率消耗小,相比而言液晶显示器的主要功耗在内部电极和驱动 ic 上,因而耗电量比其他器件要小很多。虽然 lcd 显示器的价格比数码管要贵,但它的显示效果好,是当今显示器的主流,所以采用 lcd 作为显示器第4章 系统的主程序设计4.1系统总流程图主程序是系统的监控程序,在程序运行的过程中必须先经过初始化,流程图如图4-1所示。系统在初始化完成后就进入温度测量程序,时实的测量温度并通过显示电路在lcd上显示。程序中以中断的方式来重新设定温度的上下限。根据硬件设定完成对温度的控制。系统软件设计的总流程图如图4-1所示。开始系统初始化int=0?温度上下设定温度测量显示系统温度测量yn4-1系统总体设计流程图4.2系统仿真本设计在 proteus 的 isis 7.5sp2 或者更高版本的软件环境下打开电路仿真图,如下面图 6.1。接下来将设计好的程序在keilc51 vision3 开发集成环境上编译成机器语言,生成.hex 文件,进入 proteus 的 isis,将keilc下编程生成的.hex文件导入到 at89c51 中可在 proteus 中单击全速仿真运行按钮 ,led 显示屏上显示出当前温度传感器的温度值。4-2 系统仿真图设计总结经过两个星期的学习,我们从图书馆和网络上查找资料,熟悉题目,设计几套方案并进行比较分析,编程整理设计。虽然时间紧迫,但是我们仍然按时的完成了这次的课程设计,因此对我来说学到的不仅是那些知识,更多的是团队的合作。现在想来,学校安排的课程设计有着他更深层的意义,他不仅仅让我们综合那些理论知识来运用到设计和创新,还让我们知道啦一个团队凝聚在一起时所发挥出的巨大潜能。 在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。提高了计算能力,绘图能力,熟悉了规范和标准,同时各科相关的课程都有了全面的复习,独立思考的能力也有了提高。 在此感谢我们的李老师.,老师严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;老师循循善诱的教导和不拘一格的思路给予我无尽的启迪;这次温度检测设计的每个实验细节和每个数据,都离不开老师您的细心指导。而您开朗的个性和宽容的态度,帮助我能够很顺利的完成了这次课程设计。 附录.源程设计led_0equ 30hled_1 equ 31hled_2 equ 32hadcequ35htcntaequ36htcntbequ37hh_tempequ38h;温度上限l_tempequ39h;温度下限flagbit00hh_almbitp3.0l_almbitp3.1soundbitp3.7clockbitp2.4st bit p2.5eoc bit p2.6oe bit p2.7org 00hsjmpstartorg0bhljmpint_t0org1bhljmpint_t1start:movled_0,#00hmovled_1,#00hmovled_2,#00hmovdptr,#tablemovh_temp,#153movl_temp,#77movtmod,#12hmovth0,#245movtl0,#0movth1,#(65536-1000)/256movtl1,#(65536-1000)mod 256movie,#8ahclrcsetbtr0;为adc0808提供时钟wait:setbh_almsetbl_almclr stsetb stclr st;启动转换 jnb eoc,$setb oe mov adc,p1;读取ad转换结果clr oemova,adcsubba,#77 ;判断是否低于下限jclalmmova,h_tempmovr0,adcsubba,r0;判断是否高于上限jchalmclrtr1ljmpproclalm:;低温报警clrl_almsetbtr1clrflagljmpprochalm: ;高温报警clrh_almsetbtr1setbflagljmpprocproc:mov a,adc ;数值转换mov b,#100div abmov led_2,amov a,bmov b,#10div abmov led_1,amov led_0,blcalldispsjmp waitint_t0:cplclock ;提供adc0808时钟retiint_t1:movth1,#(65536-1000)/256movtl1,#(65536-1000)mod 256cplsoundinctcntamova,tcntajbflag,i1 ;判断是高温警报还是低温警报cjnea,#30,retune;低温警报声sjmpi2i1:cjnea,#20,retune;高温警报声i2:movtcnta,#0inctcntbmova,tcntbcjnea,#25,retunemovtcnta,#0movtcntb,#0lcalldelay2retune:retidisp:mova,led_0;数码显示子程序movca,a+dptrclrp2.3movp0,alcalldelaysetbp2.3mova,led_1movca,a+dptrclrp2.2movp0,alcalldelaysetbp2.2mova,led_2movca,a+dptrclrp2.1movp0,alcalldelaysetbp2.1retdelay:movr6,#10d1:movr7,#250djnzr7,$djnzr6,d1retdelay2:movr5,#20d2:movr6,#20d3:movr7,#250djnzr7,$djnzr6,d3d

温馨提示

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

评论

0/150

提交评论