基于单片机的温湿度控制新版系统.doc
《基于单片机的温湿度控制新版系统.doc》由会员分享,可在线阅读,更多相关《基于单片机的温湿度控制新版系统.doc(32页珍藏版)》请在咨信网上搜索。
\ 基于单片机温湿度控制系统 一、研究背景 温度、湿度和人类生产、生活有着密切关系,同步也是工业生产中最常用最基本工艺参数,例如机械、电子、石油、化工等各类工业中广泛需要对温度湿度检测与控制。并且随着人们生活水平提高,人们对自己生存环境越来越关注。而空气中温湿度变化与人体舒服度和情绪均有直接影响,因此对温度湿度检测及控制就非常有必要了。 随着科技飞速发展和普及,高性能设备越来越多,各行各业对温湿度规定也越来越高。老式温湿度检测模式是以人为基本,依托人工轮流值班,人工巡回查看等方式来测量和记录环境状况信息。在这种模式下,不但效率低不利于人才资源充分运用,并且缺少科学性,许多重大事故都是由人为因素导致,人工维护缺少完整管理系统。而问世监控系统就可以解决这样人才资源挥霍,管理不及时问题,这是由于它智能化设计所决定。故本次设计对于类似项目还具备普遍意义。 二、国内外研究现状 (1)温度传感器 智能温度传感器(亦称数字温度传感器)在20世纪90年代中期问世。它是微电子技术、计算机技术和自动测试技术(ATE_)结晶。当前,国际上已开发出各种智能温度传感器系列产品。智能温度传感器内部包括温度传感器、A/D转换器、信号解决器、存储器(或寄存器)和接口电路。有产品还带多路选取器、中央控制器(CPU)、随机存取存储器(RAM)和只读存储器(ROM)。智能温度传感器能输出温度数据及有关温度控制量,适配各种微控制器(MCU),并且可通过软件来实现测试功能,温度计也越来越智能化。 (2)湿度传感器 湿度传感器产品及湿度测量属于90年代兴起行业。湿度传感器重要分为电阻式和电容式两种,产品基本形式都是在基片上涂覆感湿材料形成感湿膜。空气中水蒸汽吸附在感湿材料上后,元件阻抗、介质常数发生很大变化,从而制成湿敏元件。近年来,国内外在湿度传感器研发领域获得了较大发展。湿敏传感器正从简朴湿敏元件向集成化、智能化、多参数检测方向迅速发展。国内外各厂家湿度传感器产品水平不一,质量价格都相差较大,顾客如何选取性能价格比最优抱负产品确有一定难度,需要在这方面作进一步理解。当前国内市场上浮现了不少国内外湿度传感器产品,电容式湿敏元件较为多见,感湿材料种类重要为高分子聚合物,氯化锂和金属氧化物。 三、研究方案 一方面明了了设计思路后来,着手硬件电路设计。采用学校统一发放STC89C52单片机学习板做为课题设计主控模块。实现环绕着单片机各个元器件正常工作并且实现所要功能。温湿度传感器不在使用分开使用。而是采用DHT11数字温湿度一体传感器进型温湿度测量。一方面在简化了设计流程同步增长系统稳定性;另一方面为减少了设计成本消耗。借鉴前人经验,传感器用法,用字符液晶显示可实现系统设计。 重要内容有: ⑴学习强化单片机知识 ⑵掌握智能温湿度检测系统,提出硬件电路设计方案 ⑶画出原理图 ⑷编写单片机控制软件 ⑸完毕系统整体功能调试 设计中涉及硬件电路设计和系统程序设计。其硬件电路重要由电源电路、主控制器和显示电路等构成。其中单片机是核心某些负责对温度信号进行接受、检查并传播解决。 四、预期成果 1.人性化设计。界限温度值及湿度值可以由顾客依照顾客需求实现控制并且通过显示屏显示。 2. 可以实时、精确显示采样温度值与湿度值。 3.通过采集温度及湿度值,精确判断原则值与当前值之间差别,来变化温湿度至所需状态 4.可以一改此前靠人力控制温湿度状况、彻底做到温湿度检测和控制智能化。从而大大提高系统以便性以及稳定性。 摘 要 温湿度控制已成为当今社会研究热门项目。是工农业生产过程中必要考虑因素。作为最常用被控参数。温度和湿度已经不再是互相独立物理量,而应在系统中综合考虑。广泛应用于实验室、大棚、花圃、粮仓乃至土壤等各个领域。而老式温湿度控制则运用湿度表、毛发湿度表、双金属式测量计和湿度试纸等测试器材。通过人工进行检测。对不符合温度和湿度规定库房进行通风、降温、去湿等操作。这种人工测试办法费时费力,效率低。切随机性较大。误差大。因而就需要一种造价低廉、使用以便且计算精准温湿度控制仪器。运用单片机对温、湿度控制,具备控温、湿精度高、功能强、体积小、价格低,简朴灵活等长处,较好满足了工艺规定。 本文通过使用STC89C52单片机、DHT11传感器模块、1602液晶显示屏模块。简朴明了实现可提规定。DHT11数字温湿度传感器把采集到温湿度数据传给单片机。通过单片机解决。精确显示到液晶屏上。并对温湿度设立上下限。 核心词:单片机 DHT11传感器 1602液晶显示屏 STC89C52 系统总体方案设计 功能规定 1、通过数字温湿度传感器DHT11采集温湿度数据,即时传播给单片机; 2、单片机将收到信号进行分析和解决,将采集届时温湿度实时数据送给1602液晶显示屏; 3、通过1602LCD液晶屏完毕温湿度数据显示; 4、给定温度湿度上下限数值,设立不同温湿度. 设计思路 电路总体上分为温湿度采集某些、中央解决器、显示模块以及报警模块某些。以STC89C52单片机最小系统作为核心控制电路,控制DHT11传感器采集温湿度转换,控制1602液晶屏显示,。详细显示内容及方式由软件来完毕。采集温湿度方面由DHT11传感器来完毕,它是一种数字温湿度传感器、内置模数转换,可以直接与单片机相连接。而1602液晶屏是插针式,也可以直接与单片机相连接。因而不需要手动焊接等复杂过程。详细环节是:按照原理图将传感器、1602液晶显示屏分别接入单片机。通过DHT11传感器采集当前温湿度值、再经单片机,将解决后数据传送到液晶屏上显示出来。。设立温度上下限值。 传感器选取方案 方案一:选用DS18B20温度传感器作为温度检测模块。DS18B20是一线式数字温度传感器。具备独特单线式接口方式。测量范畴在—55℃~125℃,—10℃~85℃,误差范畴在-\+0.5℃。最高精度可达0.0625℃。 HS1101是电容式湿度传感器。可测量相对湿度范畴在0%~100%RH。误差为-\+2%RH。 方案二: 选用DHT11作为设计温湿度检测模块。DHT11是一款集成型数字温湿度一体传感器。 它应用专用数字模块采集技术和温湿度传感技术,保证产品具备极高可靠性与卓越长期稳定性。传感器涉及一种电阻式感湿元件和一种NTC测温元件,并与一种高性能8位单片机相连接。因而该产品具备品质卓越、超快响应、抗干扰能力强、性价比极高等长处。测量范畴20%~90%RH,0℃~50℃。测温精度为-\+2℃,测湿精度为-\+5%RH。完全符合本次毕业设计规定。 经上述分析,方案一虽然精度更精准。却稍显复杂。方案二即便不能实现方案一高精度测量。却也能满足设计规定。且简便易行。可靠稳定。具备超高性价比。故选取方案二。 显示屏选取方案 方案一:采用12864液晶显示屏。液晶显示模块是128×64点阵中文图形型液晶显示模块,可显示中文及图形,内置8192个中文中文(16X16点阵)、128个字符(8X16点阵)及64X256点阵显示RAM(GDRAM)。可与CPU直接接口,提供两种界面来连接微解决机:8-位并行及串行两种连接方式。具备各种功能:光标显示、画面移位、睡眠模式等。 方案二:采用HJ1602液晶显示屏。HJ1602A 是一种工业字符型液晶,可以同步显示16x02 即32个字符。(16列2行)。1602只能显示字母、数字和符号能显示16*2个字符,但寄存器不止32个,有某些显示效果,如字符一种个显示、字符从左到右或从右到左显示等等,显示效果简朴。 总结:在编程使用方面,两者难度差不多,原理差不多,都是写指令、写地址、写数据等等。固然12864液晶屏显示更全面、字符更多。相比于1602液晶屏、12864能更形象详细实现显示功能。但是1602液晶屏也能实现设计规定。网上买比较便宜,最低六块钱左右。而12864液晶显示屏最便宜也要四十块钱。从造价方面考虑,固然是价格低廉优先。而HJ1602A就是最佳选取。 单片机主芯片选取方案 方案一:AT89C51是美国ATMEL公司生产低电压,高性能CMOS型8位单片机,器件采用ATMEL公司高密度、非易失性存储技术生产,兼容原则MCS-51指令系统,片内置通用8位中央解决器(CPU)和Flash存储单元,功能强大。其片内4K程序存储器是FLASH工艺,这种单片机对开发设备规定很低,开发时间也大大缩短。写入单片机内程序还可以进行加密,这又较好地保护咱们劳动成果。再者,AT89C51当前售价比8031还低,市场供应也很充分。AT89C51可构成真正单片机最小应用系统,缩小系统体积,增长系统可靠性,减少系统成本。只要程序长度不大于4K,四个I/O口所有提供应顾客。可用5V电压编程,并且擦写时间仅需lOms。AT89C51芯片提供三级程序存储器加密,提供了以便灵活而可靠硬加密手段,能完全保证程序或系统不被仿制。PO口是三态双向口,通称数据总线口,由于只有该口能直接用于对外部存储器读/写操作。 方案二:STC89C51系列单片机指令系统和AT89C51系列完全兼容,但实际操作起来却存在诸多问题: (1)AT89C51不带ISP下载,要用下载器才行,STC89C52可以用你USB转串口下载,下载软件可以到STC厂家网上去下。 (2)STC单片机执行指令速度不久,大概是AT3-30倍,尽管快是好事,但这样一来,你在AT上好使程序在STC上不一定好用,最典型例子就是那些对时序有严格规定模块,用STC时注意得加长延时,大概是AT10—30倍就差不多,这一点自己调试就懂得了。 (3)STC单片机对工作环境规定比较低,电压低于5伏时依然正常工作,甚至3伏到4伏之间都还可以工作,然而这样环境下AT必定不行了,因此当一种系统用STC单片机好用,但用AT单片机不工作时,直接查最小系统,看单片机供电与否正常。 比较这两种方案,由于在学校期间学过数字电路、单片机原理、C语言程序设计,综合考虑单片机各某些资源和作为学生可以获得资源,通过对比本次设计规定,我选取用STC系列芯片完毕。并且学校也提供了相应硬件操作平台,实际操作起来比较以便,故STC为更合理选取。 总体设计框图 按照系统功能详细规定,在保证明现其功能然础上,尽量减少系统成本。总体设计方案环绕上述思想,初步拟定系统方案如图2-1所示。 控模块 DHT11传感器模块 1602字符液晶模块 MAX串口 传感器与之相连 1602字符液晶与之相连 系统硬件设计 概述 本次毕业设计重要由3个大模块构成,分别是主控模块、传感器模块、LCD液晶显示模块,其中主控模块是本次毕业设计核心模块,重要是指STC89C52芯片,它控制整个系统运营,运用其各个口分别控制其她模块,使其她模块可以成为一种整体,实现功能需要;传感器模块用于实验室实时温湿度检测、由于DHT11数字一体性,集成了模数转换等模块。直接接单片机即可。LCD液晶显示模块同样接入单片机,完毕对单片机解决后数据进行显示。 主控模块设计 STC89C52芯片简介 功能特性:STC89C52是一种低功耗、高性能CMOS8位微控制器,具备8K在系统可编程Flash存储器。与工业80C51产品指令和引脚完全兼容。片上Flash容许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有机灵8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效解决方案,如图3-1所示。STC89C52具备如下原则功能: 8k字节Flash,256字节RAM,32 位I/O口线,看门狗定期器,2 个数据指针,三个16位定期器/计数器,一种6向量2级中断构造,全双工串行口,片内晶振及时钟电路。此外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选取节电模式。空闲模式下,CPU 停止工作,容许RAM、定期器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一种中断或硬件复位为止。 重要性能:与MCS51单片机产品兼容、8K字节在系统可编程Flash存储器、1000次擦写周期、全静态操作:0Hz~33Hz 、三级加密程序存储器 、32个可编程I/O口线 、三个16位定期器/计数器八个中断源、全双工UART串行通道、低功耗空闲和掉电模式、掉电后中断可唤醒、看门狗定期器、双数据指针、掉电标记符。 DHT11传感器模块设计 DHT11数字温湿度传感器是一款具有已校准数字信号输出温湿度复合传感器。它应用专用数字模块采集技术和温湿度传感技术,保证产品具备极高可靠性与卓越长期稳定性。传感器涉及一种电阻式感湿元件和一种NTC测温元件,并与一种高性能8位单片机相连接。因而该产品具备品质卓越、超快响应、抗干扰能力强、性价比极高等长处。每个DHT11传感器都在极为精准湿度校验室中进行校准。校准系数以程序形式储存在OTP内存中,传感器内部在检测信号解决过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小体积、极低功耗,信号传播距离可达20米以上,使其成为各类应用甚至最为苛刻应用场合最佳选则。产品为 4 针单排引脚封装。连接以便,特殊封装形式可依照顾客需求而提供。 DHT11传感器实物图如下所示: (1)引脚简介: Pin1:(VDD),电源引脚,供电电压为3~5.5V。 Pin2:(DATA),串行数据,单总线。 Pin3:(NC),空脚,请悬浮。 Pin4(VDD),接地端,电源负极。 (2)接口阐明 : 建议连接线长度短于20米时用5K上拉电阻,不不大于20米时依照实际状况使用适当上拉电阻。 DHT11传感器连接STC89C51系列单片机相对比较简朴。单片机P2.0口用来发收串行数据,即数据口。连接传感器Pin2(单总线,串行数据)。由于测量范畴电路不大于20米,建议加一种5K上拉电阻,因而在传感器Pin2口与电源之间连接一种5K电阻。而传感器电源端口Pin1和Pin4分别接单片机VDD和GND端。传感器第三脚悬浮放置。DHT11传感器原件电路原理图如下 1602液晶显示模块设计 1602液晶显示屏简介 HJ1602A 是一种工业字符型液晶,可以同步显示16x02 即32个字符。(16列2行)。在寻常生活中,咱们对液晶显示屏并不陌生。液晶显示模块已作为诸多电子产品通过器件,如在计算器、万用表、电子表及诸多家用电子产品中都可以看到,显示重要是数字、专用符号和图形。在单片机人机交流界面中,普通输出方式有如下几种:发光管、LED数码管、液晶显示屏。发光管和LED数码管比较惯用,软硬件都比较简朴。 在单片机系统中应用晶液显示屏作为输出器件有如下几种长处: 由于液晶显示屏每一种点在收到信号后就始终保持那种色彩和亮度,恒定发光,而不像阴极射线管显示屏(CRT)那样需要不断刷新新亮点。因而,液晶显示屏画质高且不会闪烁。 液晶显示屏都是数字式,和单片机系统接口更加简朴可靠,操作更加以便。 液晶显示屏通过显示屏上电极控制液晶分子状态来达到显示目,在重量上比相似显示面积老式显示屏要轻得多。 相对而言,液晶显示屏功耗重要消耗在其内部电极和驱动IC上,因而耗电量比其他显示屏要少得多。 字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,当前惯用16*1,16*2,20*2和40*2行等模块。下面以长沙太阳人电子有限公司1602字符型液晶显示屏为例,简介其用法。 普通1602字符型液晶显示屏实物如图 (1)引脚阐明: 第1脚:VSS为地电源。 第2脚:VDD接5V正电源。 第3脚:VL为液晶显示屏对比度调节端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一种10K电位器调节对比度。 第4脚:RS为寄存器选取,高电平时选取数据寄存器、低电平时选取指令寄存器。 第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平 R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。 第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。 第7~14脚:D0~D7为8位双向数据线。 第15脚:背光源正极。 第16脚:背光源负极。 (2)1602LCDRAM地址映射以及原则字库表 LCD1602液晶模块内部字符发生存储器已经存储了160个不同点阵字符图形,这些字符图有:阿拉伯数字、英文字母大小写、惯用符号、和日文假名等,每一种字符均有一种固定代码,例如大写英文字母“A”代码是01000001B(41H),显示时模块把地址41H中点阵字符图形显示出来,咱们就能看到字母。 它读写操作、屏幕和光标操作都是通过指令编程来实现(阐明:1为高电平,0为低电平)。 指令1:清显示,指令码01H,光标复位到地址00H位置。 指令2:光标复位,光标返回到地址00H 。 指令3:光标和显示模式设立 I/D:光标移动方向,高电平右移,低电平左移 。S:屏幕上所有文字与否左移或者右移。高电平表达有效,低电平则无效 。 指令4:显示开关控制。 D:控制整体显示开与关,高电平表达开显示,低电平表达关显示。 C:控制光标开与关,高电平表达有光标,低电平表达无光标。 B:控制光标与否闪烁,高电平闪烁,低电平不闪烁 。 指令5:光标或显示移位 S/C:高电平时移动显示文字,低电平时移动光标 。 指令6:功能设立命令 DL:高电平时为4位总线,低电平时为8位总线。 N:低电平时为单行显示,高电平时双行显示。 F:低电平时显示5X7点阵字符,高电平时显示5x10点阵字符 (有些模块是 DL:高电平时为8位总线,低电平时为4位总线)。 指令7:字符发生器RAM地址设立 。 指令8:DDRAM地址设立 。 指令9:读出忙信号和光标地址。 BF为忙标志位,高电平表达忙,此时模块不能接受命令或者数据,如果为低电平表达不忙,模块就能接受相应命令或者数据。 指令10:写数据 。 指令11:读数据 。 液晶显示模块是一种慢显示屏件,因此在执行每条指令之前一定要确认模块忙标志为低电平,表达不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符。 1602 内部显示地址如图 例如第二行第一种字符地址是40H,那么与否直接写入40H 就可以将光标定位在第二行第 一种字符位置呢?这样不行,由于写入显示地址时规定最高位D7恒定为高电平1,因此实际写入数据应当是01000000B(40H)+10000000B(80H)=11000000B(C0H) 。在对液晶模块初始化中要先设立其显示模式,在液晶模块显示字符时光标是自动右移,无需人工干预。每次输入指令前都要判断液晶模块与否处在忙状态。1602 液晶模块内部字符发生存储器(CGROM)已经存储了160个不同点阵字符图形,如下图所示,这些字符有:阿拉伯数字、英文字母大小写、惯用符号、和日文假名等,每一种字符均有一种固定代码,例如大写英文字母“A”代码是01000001B(41H),显示时模块把地址41H 中点阵字符图形显示出来,咱们就能看到字母“A”。液晶显示原理是运用液晶物理特性, 通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。液晶显示屏具备厚度薄、合用于大规模集成电路直接驱动、易于实现全彩色显示特点,当前已经被广泛应用在便携式电脑、数字摄像机、PDA移动通信工具等众多领域。 系统软件设计 在对咱们所要设计课题有了整体理解之后,需要先建立程序框架流程图,对整个设筹划分模块,逐个模块实现其功能,最后把各个子模块合理连接起来,构成总程序。主程序一方面要对整个系统进行初始化,然后将采集到温湿度指令传给系统主流程图如图 开始 初始化 延时 温湿度测量 1602显示数据 判断温度 温度 低于26℃ 高于30℃ 电机控制电扇工作 电机控制电扇工作 结束 1602液晶显示模块设计 液晶显示模块是一种慢显示屏件,在执行每条指令之前要确认模块忙标志为低电平,表达不忙,则此指令失效,要显示字符时要先输入显示字符地址,告诉模块在哪里现实了字符。1602液晶显示模块可与STC89C52直接接口。软件流程图如图所示: 开始 LC初始化 延时 设第一行显示位置 显示第一行内容 设第二行显示位置 显示第二行内容 传感器模块设计 温湿度模块DH11数字温湿传感器加湿器温湿度传感器随着科技不断发展,汽车、空调、除湿器、烘干机等种类繁多电器都已进入人们寻常生活,而这些电器设备诸多都离不开对温度、湿度等环境因素规定。因而,温度、湿度传感器用途越来越广泛。新一代数字传感器不再需要外置A D转换模块,并具备原则接口,使用以便,得到了越来越多应用。DHT11作为一种新型单总线温湿度数字传感器,具备更多长处,它使系统设计更加简朴,控制以便,易于实现。1 单总线通信简介 当前惯用微机与外设之间进行数据传播串行总线重要有I2C总线、SPI总线和SCI总线。其中I2C总线以同步串行两线方式进行通信(1条时钟线,1条数据线),SPI总线则以同步串行三线方式进行通信(1条时钟线,1条数据输入线,1条数据输出线),而SCI总线是以异步方式进行通信(1条数据输入线,1条数据输出线)。这些总线至少需要两条或两条以上信号线。 DHT11传感器模块软件流程图如下图 给DHT11上电 延时1S 保持高电平 检测记录信号 输出低电平 延时 输出低电平 数据输出 结束信号 系统分析与调试 本设计是在Keil C环境下开发,Keil C软件支持C语言编程及调试,运用以便,是做C语言毕业设计者首选。设计首要任务是安装和学习使用这个软件,在简朴学习和理解Keil C后,咱们便可在此环境下开始了对带录音功能电子琴设计工作。在编译完Keil C后,再运用STC_ISP_V480软件烧录到开发板上,实现实物与程序连接。在烧录前要对STC_ISP_V480进行某些必要设立。第一步:设立MCU Type为STC89C52RC;第二步:打开编写好并编译程序文献,它是以.hex为后缀文献;第三步:选取相应COM端口,(可在我电脑设备管理处查看COM选项);第四步:点击Download/下载,等提示 请给MCU上电时,打开开发板上开关,它就自行烧录了 在完毕对程序调试及烧录之后,还需要对其进行演示,把开发板与电脑连上,设立好相应接口,完毕供电及下载。开始供电后、稍带几秒等1602液晶屏能正常显示当前温湿度了之后。观测当前温湿度变化。并且针对与自己设定限值相比较。若当前温度没有超标,即没有超过限值。可以用手捂住DHT11传感器,令其温度显示超标。通过测试。完全可行。因而简朴实现了对温度控制。湿度控制原理跟温度同样。 结论与展望 本系统以单片机为核心部件控制系统,运用软件编程,最后基本上实现了各项规定。虽然系统还存在某些局限性,例如温湿度测量不够精准,特别是湿度,波动较大。尝试了各种改进办法。依然不太抱负。但是大体能反映出设计目和规定。与预期成果相差不多。 通过近一年奋斗,从拟定题目,到日后查找资料,理论学习,实验编程调试,这一切都使我理论知识和动手能力有了很大提高。理解了单片机硬件构造和软件编程办法,对单片机工作方式有了很大认知。同步,对某些外围设备例如传感器、液晶屏、键盘、等有了一定理解!学会了对一项工程如何设计:一方面,要分析需要设计系统要实现什么功能,需要什么器件;然后,针对设计购买相应硬件,选用硬件时不但要选用经济,更重要是如何能更精准更以便完毕系统规定;再次,对各个硬件软件实现要弄清晰,如何更好实现各个硬件协调,更好通过主控制器件实现硬件功能。最后,通过各种测试与调试,让设计更好完毕系统规定。 但由于咱们水平有限,此设计中也存在一定局限性。就例如说对湿度控制方面,由于温度时刻都在发生着变化。而湿度变化又大体上取决于温度。因而对于湿度控制有点困难。同步由于湿度变化波动比较大。为湿度限值设定也带来了不小麻烦。 温湿度控制已经成为了21世纪热门研究话题之一。无论是从生产还是生活,与咱们人类都是息息有关。而智能化控制温湿度已经发展成为一种必然。随着世界经济发展,人们生活水平提高以及社会进步。咱们不也许始终墨守陈规,不能在恪守此前运用人力资源来控制温湿度办法。不但挥霍大量人力资源、财力资源,并且控制系统也更加单一化。而采用自动控制办法、既节约了人力资源,更体现了与时俱进思想、世界在进步、而这种进步就该体当前各个方面。 #include<reg52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int #define Data P0 sbit RS=P2^5; sbit RW=P2^6; sbit E=P2^7; sbit DHT=P1^0; sbit ADD=P1^3; sbit SEC=P1^4; sbit TADD=P1^5; sbit TSEC=P1^6; uchar FirstLine[] ="wen:00 T:00"; uchar SecondLine[]="shi:00"; unsigned char shiZ,shiX,wenZ,wenX,check,T=25; unsigned char tr_shiZ,tr_shiX,tr_wenZ,tr_wenX; unsigned char flag; unsigned int n=20,m; void delay_1ms(unsigned int a) { unsigned int i; while(--a!=0) { for(i=0;i<600;i++);} } void delay_10us() { unsigned char i; i--; i--; i--; i--; i--; i--; } char read_data() { unsigned char i,num,temp; num=0; for(i=0;i<8;i++) { flag=2; while((!DHT)&&flag++); delay_10us(); delay_10us(); delay_10us(); if(DHT==1) { temp=1; flag=2; while(DHT&&flag++); } else temp=0; num<<=1; num|=temp; } return(num); } void delay(uchar ms) { uchar i,j; for(i=ms;i>0;i--) for(j=100;j>0;j--); } void DelayUs(unsigned char us) { unsigned char uscnt; uscnt=us>>1; while(--uscnt); } void DelayMs(unsigned char ms) { while(--ms) { DelayUs(250); DelayUs(250); DelayUs(250); DelayUs(250); } } void lcd_write_com(uchar c) { DelayMs(5); E=0; RS=0; RW=0; _nop_(); E=1; Data=c; E=0; } void lcd_write_dat(uchar c) { DelayMs(5); E=0; RS=1; RW=0; _nop_(); E=1; Data=c; E=0; RS=0; } void lcd_init() { DelayMs(15); lcd_write_com(0x38); lcd_write_com(0x38); lcd_write_com(0x38); lcd_write_com(0x06); lcd_write_com(0x0c); lcd_write_com(0x01); } void ShowChar(uchar pos,uchar c) { unsigned char p; if (pos>=0x10) p=pos+0xb0; else p=pos+0x80; lcd_write_com(p); lcd_write_dat(c); } void ShowString (uchar line,char *ptr) { unsigned char l,*p; p=ptr; l=line<<4; while((*p)!='\0') { ShowChar(l++,*(p)); p++; } } void disp(void) { ShowString(0,FirstLine); ShowString(1,SecondLine); } void read_init() { DHT=0; delay_1ms(20); DHT=1; delay_10us(); delay_10us(); delay_10us(); delay_10us(); DHT=1; if(!DHT) { flag=2; while((!DHT)&&flag++); flag=2; while(DHT&&flag++); tr_shiZ=read_data(); tr_shiX=read_data(); tr_wenZ=read_data(); tr_wenX=read_data(); check=read_data(); DHT=1; } } void keyscan() { if(TADD==0) { delay_1ms(10); if(TADD==0) { T++; if(T==100) T=0; while(!TADD); } } if(TSEC==0) { delay_1ms(10); if(TSEC==0) { T--; if(T==0) T=100; while(!TSEC); } } } void main() { unsigned char temp; SEC=0; ADD=0; lcd_init(); delay(50); while(1) { disp(); read_init(); temp=tr_shiZ+tr_shiX+tr_wenZ+tr_wenX; if(check==temp) { shiZ=tr_shiZ; shiX=tr_shiX; wenZ=tr_wenZ; wenX=tr_wenX; } FirstLine[4]='0'+wenZ/10; FirstLine[5]='0'+wenZ%10; FirstLine[10]='0'+T/10; FirstLine[11]='0'+T%10; SecondLine[4]='0'+shiZ/10; SecondLine[5]='0'+shiZ%10; if(wenZ>T)ADD=1; if(wenZ<T)ADD=0; keyscan(); } } 参照文献 [1] 陈明荧.8051单片机课程设计实训教材[M]. 北京:清华大学出版社,. [2] 徐新艳.单片机原理、应用与实践[M]. 北京:高等教诲出版社,. [3] 吴金戌,沈庆阳,郭庭吉.8051单片机实践与应用[M]. 北京:清华大学出版社,. [4] 王千.实用电子电路大全[M]. 电子工业出版社,. [5] 冯博琴.微型计算机原理与接口技术[M]. 北京:清华大学出版社,. [6] 张毅刚.MCS-51单片机应用设计[M]. 哈尔滨工业大学出版社,. [7] 张淑清,姜万录等.单片微型计算机接口技术及应用[M]. 国防工业出版社,. [8] 吴金戌,沈庆阳,郭庭吉.8051单片机实践与应用[M]. 北京:清华大学出版社,. [9] 冯博琴.微型计算机原理与接口技术[M]. 清华大学出版社,. [10] 张毅刚.MCS-51单片机应用设计[M]. 哈尔滨工业大学出版社,. [11] 赵亮,侯国锐.单片机C语言编程与实例[M]. 北京:人民邮电出版社,. [12] 王振红,李洋,郝承祥.ISD4004语音芯片工作原理及其在智能控制系统中应用[J]. 电子器件3月第25卷第1期. [13] R.L.Geiger,P.E.Allen,N.R.Strader.VLSI.Design Techniques for Analog And Digitial Ciruits,McGraw-Hill Inc.1990. [14] ANALOG DEVICES.The technology of AT89C51[EB/OL].White Paper,Spe.28..- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 温湿度 控制 新版 系统
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文