已阅读5页,还剩29页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
华东交通大学基于单片机的温湿度检测与控制 专 业:通信工程 学 号:20100610080203 学生姓名: 张艳 指导老师: 黄德昌摘要温湿度等环境参数是气象环保、煤矿工业、精准农业等领域的主要因素,对其实时、准确的监测显得非常关键。设计智能的环境参数无线监测系统来解决上述难题显得尤为必要。本次设计是采用MSC-51系列单片机中的AT89S51和DHT11的低成本的温湿度的检测系统。本设计主要包括硬件电路的设计和系统软件的设计。硬件电路主要包括单片机、温湿度传感器、显示模块、报警器以及键盘等5部分,由DHT11温湿度传感器及12864字符型液晶模块构成系统显示模块,该系统电路简单、工作稳定、集成度高,调试方便,测试精度高,具有一定的实用价值。其中测温湿度控制电路由温湿度传感器和预设温度值比较报警电路组成,用户根据需要预先输入预设值,当实际测量的温湿度大于预设的温湿度数值时,发出报警信号(蜂鸣器蜂鸣)。软件部分包括了主程序、显示子程序、测温湿度子程序。 经过设计制作和调试,系统可以在大区域内和复杂环境下实现稳定、准确监测环境中的温湿度,并可将结果实时显示在液晶屏上,达到了预期目标。本系统可广泛应用于气象环保、煤矿工业、精准农业等监测领域,具有一定的实用价值和良好的市场前景。关键词: 温度测量 湿度测量 AT89S51 DHT11ABSTRACTEnvironmental parameters, such as temperature and humidity, sunshine is the main factors to meteorological environmental protection, coal mine industry, precision agriculture, so actually and accurate monitoring is very critical. So, designing a intelligent environmental parameters monitoring system to solve the problem is necessary. This design is the use of MSC-51 Series MCU AT89S51 and DHT11 in the low-cost temperature and humidity detection system. This design includes the design of hardware and system software design. Hardware circuit includes a microcontroller, temperature and humidity sensors, display module, the alarm and the keyboard 5, the DHT11 temperature and humidity sensor and 1602 constitute a system of character LCD module display module, the system circuit is simple, stable, high integration, commissioning Convenient, high precision, has some practical value. Temperature and humidity control circuit in which the temperature and humidity sensors and compare the value of the preset temperature alarm circuit, the user input required pre-default value, when the actual temperature and humidity measurements of temperature and humidity is greater than the preset value, an alarm signal (bee Buzzer beep). Software part includes the main program, display routines, subroutines side temperature and humidity.Through the design, manufacturing and testing , the system can realize stable and accurate monitoring the environment temperature and humidity in the large area and complex environment, and can send the results to the screen , and achieve the desired goals. This system can be widely used in meteorological environmental protection, coal mining industry, precision agriculture and other monitoring fields, it has a certain practical values and good market prospect.Key words: Temperature measurement Humidity measurement AT89S51目录第一章 绪论41.1 选题背景41.2 环境参数监测系统的研究现状41.3 环境参数监测系统的基本架构51.4 论文内容和结构安排5第二章 方案设计62.1 方案的选择62.1.1 微控器(MCU)的选择62.1.2 环境参数传感器的选择72.1.3 数据显示的选择72.2 系统整体方案82.3 小结8第三章 系统硬件设计93.1 MCU主控单元硬件93.1.1 单片机总体分析93.1.2 AT89S51模块分析93.1.3 AT89S51电路设计113.2传感器信号采集单元硬件113.2.1 传感器分析113.2.2传感器电路设计163.3 LCD显示单元硬件163.3.1 LCD液晶分析163.3.2 LCD电路设计193.4系统的蜂鸣器电路203.5小结21第四章 系统软件设计224.1系统硬件驱动程序设计234.1.1 SHT11采集温湿度软件设计234.1.2 LCD1206液晶显示软件设计234.3 小结23第五章 谢辞24参考文献25附录I:系统电路原理图26附录II:系统PCB图27附录III:系统驱动程序代码28附录IV:液晶显示源代码32第一章 绪论1.1 选题背景目前随着生活质量的不断提高,人们的生活水平越来越高,所以对环境的要求也越来越高,环境控制的也成了人们安居乐业的基础,成了共建和谐环境的重要环节。尤其是目前生活节奏的加快,许多白领都出现了亚健康的状态,因此家庭温湿度的检测对于现代家庭来说也变得刻不容缓了。因此为了满足最适宜人们生活的最佳温度和湿度,我们需要研究一种家庭式的,便于提醒和控制温湿度的装置,人们可以根据不同季节以及个人的需要进行不同的调整,以便达到最佳的居住环境,这不仅仅是对于环境要求的进步,同时也体现了现代文明的发达与先进。为了更加有效的保证人们生活环境的安逸和舒适,同时也为了人们生活的更加健康,人们已不满于目前的居住环境,对家庭提出了更高的要求,智能化被引进了家庭,并且迅速在全国乃至世界范围内普遍发展开来,由于自然环境污染越来越严重,城市人口越来越多等,适宜人们生活的温度以及湿度越来越难以达到标准,常见的南北气候差异,北方冬天异常干燥,南方却阴冷潮湿,而对于我们来说,如何有效地在合适的时间内对环境作出相应的措施却始终难以把握,因此我们需要采取有效的措施,以满足人们的要求。1.2 环境参数监测系统的研究现状 最近几年,国内外温湿度传感器测量系统正向着集成化、智能化发展,随着科研人员的不断努力,该类型系统取得的巨大的成就。现代温湿度传感器测量系统技术主要以数据采集为依据,主要类型包括:虚拟仪器、智能仪器、数字式仪器等等。伴随电子科学技术的进一步发展,数据采集系统也发生了日新月异的变化,其整体的性能、实用性方面都有所改进。因此,依托于数据采集结构而发展的温湿度传感器测量系统在实际应用中也发挥这越来越重要的作用。目前,许多外国大型企业都很重视传感器的研发工作,例如,日本的Figaro公司、芬兰的Vaisala公司等,都致力于传感器的发展和完善,以保障其在整个销售市场的竞争力。在九十年代,先后出现了集成温度湿度测量套件和应用于湿度传感器的测试系统,这个新技术的产生都大大刺激了传感器的进一步发展。与此同时,国内许多机构也在传感器测试装置的研发上不断探索、研发。例如通过采用传统电子仪器进行设计研发而成的多种动态测试系统、动进样装置的气体传感器智能测试系统等等,这些成绩都体现了我国在传感器领域取得的成就。当然,随着科技的进步,传统的温湿度测试技术在稳定性、精度等方面已经无法满足市场的需求,因此,针对新一代传感器的探究显得尤为重要。1.3 环境参数监测系统的基本架构 环境参数监测系统可以实时稳定的监测当前区域的环境参数,监测系统主要包括处理器模块(MCU)、数据采集模块、数据显示模块、按键模块、报警模快处理器(MCU)模块:本模块一般采用可编程微控器(MCU),如SCM、FPGA、ARM,处于核心地位。该模块控制数据采集模块采集数据,控制显示模块显示数据,控制数据传输模块传输数据以及对数据进行简单的预处理。数据采集模块:本模块用于采集环境中的温湿度等参数,所用器件是传感器,具体视不同环境参数选定不同的传感器,如采集温度采用温度传感器,采集湿度采用湿度传感器,当然现在有温湿度集成在一起的温湿度传感器。数据显示模块:本模块作为人机交互的关键部分,用于显示采集的环境参数,方案选择时可视不同的需求采用液晶(LCD)显示或传到PC机上显示。按键模块:本模块用于作为人工设置环境报警温度。报警模块:本模块用于在环境温湿度不在设定范围内时发出报警,用来提醒人通过外界条件改变居住处温湿度。1.4 论文内容和结构安排本文设计开发的是基于单片机的环境参数无线监测系统,其包括以下几个方面的内容:1) 利用单片机作为主控芯片设计开发一个系统;2) 利用相应的传感器采集某区域中的相关环境参数;3) LCD显示采集到的数据;论文结构如下:第一章为绪论部分,介绍环境参数监测系统的相关内容;第二章为方案设计部分,主要是根据设计要求选择合适的方案和对应的器件;第三章为硬件设计部分,主要对监测系统的硬件电路进行介绍和分析;第四章为软件设计部分,主要对监测系统的软件程序进行介绍和分析;第二章 方案设计根据绪论所述环境参数监测系统的基本构架可知,系统一般包括三个部分,总体控制部分、数据采集部分、数据显示部分。在方案设计时,总体控制部分考虑的是可编程微控器(MCU)的选择;数据采集部分考虑的是传感器的选择;数据显示部分考虑的液晶(LCD)显示选择。另外,方案选择应考虑系统整体的协调性、便利性和功耗。环境参数监测系统的设计应根据实际需求作不同的改变,本文所要设计和开发的监测系统应实现温湿度数据的采集和显示,因此在方案选择和设计时做如下分析和选定。2.1 方案的选择2.1.1 微控器(MCU)的选择总体控制作为监测系统的核心控制和处理部分,微控器(MCU)的选择就显得非常重要,选择不同的MCU直接关系到整体监测系统的开发难度和成本。一般MCU有以下几种选择方案:1) 现场可编程门阵列(FPGA):FPGA是在PAL、GAL、CPLD等可编程器件的基础上发展起来的,它采用了逻辑单元阵列LCA这样一个概念,内部包括可配置逻辑模块CLB、输出输入模块IOB和内部连线部分,可用硬件描述语言VHDL或Verilog进行开发。但FPGA芯片管脚较多,每次开发时需要对端口进行配置,整体性价比不高。2) ARM(Advanced RISC Machines):ARM是嵌入式系统方面的主流平台,其应用领域也越来越广,包括现在大部分的智能手机用的都是ARM处理器。ARM芯片的处理速度可以达到上百兆,支持流水线操作。但其涉及操作系统,开发难度较高,价格也较高,不利于整体系统开发成本的控制。3) DSP(Digital Signal Processor):DSP是一种独特的微处理器,是以数字信号来处理大量信息的器件。其工作原理是接收模拟信号,转换为0或1的数字信号,再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器。它强大的数据处理能力和高运行速度使得其在视频处理和语音处理领域应用的非常广泛。但一般不用其来作为控制,而是作为大批量数据的处理芯片。4) 单片机(SCM):单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。SCM具有性能非常稳定、功耗低、开发简单等许多优点,广泛应用于家用电器、智能化仪器仪表、医用设备、汽车电子产品、航空航天、专用设备的智能化管理及工业生产过程控制等领域。综合上述四种方案的比较和分析并结合本监测系统的设计要求,本环境参数监测系统的MCU选择单片机(SCM),并选择SCM系列中的AT89S51单片机。2.1.2 环境参数传感器的选择传感器作为数据采集部分的关键器件,其选择直接关系到数据采集的复杂程度、灵敏度和精度。由于设计开发的环境参数监测系统需要采集环境的温度、湿度和光照强度,因此需要对温度传感器、湿度传感器、光敏传感器进行选择。温湿度传感器的选择温度、湿度传感器分模拟和数字的,模拟的传感器输出的是模拟量,数字传感器输出的数字量。模拟传感器一般都是通过电阻值的变化影响电压值的变化,电压值是一个模拟量,而我们用到的MCU只能识别数字信号,所以还需要一个AD转换芯片。数字传感器则集成了AD转换模块,输出的是可供MCU识别的数字信号。数字传感器相比模拟传感器,开发比较简单,但价格较高一些。随着微电子技术的发展,现在已经开发出了温度湿度集成在一起的传感器温湿度传感器,这样就使得用户对温湿度的采集更方便了,性价比较高。例如奥松电子研发的数字温湿度传感器SHT11。结合实际要求选择了Sensirion传感器公司研发的新型数字式温湿度传感器SHT11,该传感器采用CMOSens专利技术将温湿度传感器、A/D转换器及数字接口无缝结合,使得该传感器具有体积小、响应速度快、接口简单、性价比高等优点。2.1.3 数据显示的选择数据显示部分是将传感器采集的数据显示给用户,一般有三种种方式,一种是通过数码管显示,另外一种是通过液晶(LCD)显示,第三种是在PC机上开发一个界面显示软件将数据显示在PC机界面上。采用数码管显示直观,但由于受数码管位数的限制不能显示很多数据,所以现在的监测系统一般不采用这种显示方式;采用LCD显示数据方便、简单,这是现场显示的一种最佳选择,LCD可以选择1602或12864或其它型号的液晶;为了让整个监测系统具有更好的普适性,数据显示采用了液晶(LCD)显示方式。2.2 系统整体方案根据课题的任务要求,基于单片机的环境参数无线监测系统需要实现以下功能: 采集被监测区域的空气温湿度;液晶显示监测数据;根据方案选择可知,我们选择了AT89S51作为MCU,SHT10作为空气温湿度传感器LCD12864液晶显示器。整体方案框图如图2-1所示:温湿度传感器单片机LCD温湿度显示键盘蜂鸣器图2-1 整体方案框图2.3 小结方案的选择是设计系统的一个重要环节,方案的选择直接关系到整个系统的开发难度和开发成本。通过系统方案的设计可以选择最佳的硬件去完成系统的各项功能,一个好的设计方案必须考虑整个系统的性价比。第三章 系统硬件设计监测系统一般分为硬件和软件部分进行设计,其中硬件是基础,其设计的好坏直接关系到整个系统的性能。设计的无线监测系统主要有MCU(AT89S51)主控单元、传感器信号采集单元、无线射频通信单元、LCD显示单元和串口通信单元五个模块组成,现对每一模块的硬件部分进行介绍,包含器件介绍和硬件电路设计两部分。3.1 MCU主控单元硬件本系统的主控单元采用可编程的微型控制单元(MCU),具体器件是ATMEL公司生产的增强型51系列单片机AT89S51。3.1.1 单片机总体分析单片机是微型计算机的一个重要分支,它诞生于20世纪70年代,它的出现是计算机计算发展史上的重要里程碑,它使计算机从海量存储与高速复杂数字计算进入到智能化控制领域。单片机是在一块半导体硅片集成了计算机的所有基本功能部件,包括中央处理器(CPU)、存储器(RAM和ROM)、输入/输出接口电路、中断系统、定时器/计数器和串行通信接口电路等。因此,单片机只需要与适当的软件及适当的外部设备相结合,就可以构成一个完整的计算机应用系统。单片机的发展经历了探索、完善、形成和全面发展四个阶段,其发展趋势是向CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。由于其稳定可靠、体积小、功耗低、价格低廉等诸多优点,单片机广泛应用在家用电器、智能仪器仪表、医疗设备、汽车电子产品、航空航天、专用设备的智能化管理及工业生产过程控制等领域。3.1.2 AT89S51模块分析AT89S51是ATMEL公司生产的一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,AT89S51在众多嵌入式控制应用系统中得到广泛应用。AT89S51单片机有40个引脚,2条电源引脚、2条外接晶振引脚、4条控制功能的引脚以及32条输入输出引脚,有中央处理器(CPU)、256Byte的内部数据存储器、4KB的内部程序存储器、两个16位的定时器/计数器、4个8位的并行IO口、一个全双工的串行口、5个中断源的中断控制系统和时钟电路。AT89S51内部结构图如图3-1所示:图3-1 AT89S51内部结构图对AT89S51单片机的开发主要就是对其电路电源的设计、时钟电路的设计、复位电路的设计和IO口的分配,其中IO口分配是很重要的,它关系到系统的布局布线和性能。下面对AT89S51的I/O做一简单介绍。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。3.1.3 AT89S51电路设计主控系统的硬件电路就是AT89S51的外围电路设计,包括电源电路、复位电路、时钟电路和I/O口分配。1,复位电路AT89S51芯片提供了一个复位引脚RST/VPD(9脚),只要此输入端保持两个周期的高电平就能实现对AT89S51的复位。复位电路如图3-3所示:图3-3 复位电路2,时钟电路单片机是按时序一拍一拍执行指令的,因此需要一个基准时钟信号,时钟电路就是给AT89S51单片机提供时钟信号的,且采用外部时钟方式。时钟电路如图3-4所示:图3-4 时钟电路3.2传感器信号采集单元硬件 3.2.1 传感器分析DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它应用专用的温湿度传感和数字模块采集技术,具有很高的稳定性和可靠性,DHT11传感器内含一个NTC测温和一个电阻式感湿元件,并与一个8位的高性能单片机相连接,在精确的湿度校验室中DHT11传感器进行过校准,以程序的形式校准系数储存在0TP内存中,检测信号的时候,在处理过程中传感器内部要调用这些校准系数,采用单线制的串行接口,使系统集成可以有较低的功耗,而且更加简单快速,信号传输距离超过20米,作为一个数字温湿度传感器DHT11具有响应快速、抗干扰强、性价比高等优点,它的性能指标如下:湿度测量范围为2090RH;湿度测量精度为5RH;温度测量范围为050 ,温度测量精度为2,工作电压3055 V,相应时间5S,DHT1l采用4针单排引脚封装, 传感器通电后,需要等待1s,这是因为要越过不稳定的状态,在此期间不需发送指令,电源引脚(VDD,GND)之间可增加一个100nF 的电容,用以去耦滤波7。典型的应用电路如下:图3-5典型应用电路DHT11实物图如下:图3-6 DHT11实物图(1)串行接口(单线双向)采用单总线数据格式,DATA 用于微处理器与DHT11之间的通讯和同步,一次通讯时间4ms左右,数据分小数部分和整数部分。通讯过程如图2.4所示图3-7 通讯过程总线空闲状态为高电平的时候主机把总线拉低等待DHT11响应, DHT11能检测到起始信号,主机必须把总线拉低,至少大于18ms。DHT11一旦接收到主机的开始信号,接着就等待开始信号的结束,然后发送80us的低电平响应信号,要读取DHT11的响应信号,必须等待开始信号的结束,并延时等待20-40us后才能够接受,主机发送开始信号后,这时候就可输出高电平或切换到输入模式,接着总线由上拉电阻拉高。DHT11发送响应信号的时候总线为低电平 ,DHT11把总线拉高80us之前,必须等到响应信号发送,准备发送数据时,每一bit数据都以50us低电平时隙开始,数据位是0或1是由高电平的长或短来决定。假如响应信号的读取为高电平,但是DHT11无响应响应,这时候说明路线可能连接不正常,当最后一bit数据传送结束后,DHT11把总线拉低50us,接着总线由上拉电阻拉高进入空闲状态。数字0信号表示方法如图所示图3-8 数字0信号表示方法数字1信号表示方法.如图2.6所示:图3-9 信号1 表示方法(2)电气特性VDD=5V,T = 25,除非特殊标注,其中主要的电气特征如下表所示:参数条件mintypmax单位供电DC355.5V供电电流测量0.52.5Ma平均0.21Ma待机100150Ua采样周期秒1次表3-1电气特征(注:采样周期间隔不得低于1秒钟)(3)性能说明如下表所示:参数条件MinTypMax单位分辨率8Bit111%RH精度254%RH重复性1%RH温度0-505%RH温度量程范围03090%RH502080%RH252090%RH长期稳定性典型值1%RH/yr迟滞1互换性可完全互换分辨率888Bit111重复性1响应时间1/e(63%)630S量程范围050精度12表3-2 性能说明(4)DHT11引脚说明如下表所示pin名称注释1VDD供电35.5V2DATA串行数据,单总线3NC空脚,悬空4GND接地,电源负极表3-3 DHT11引脚说明(5)应用信息电阻式湿度传感器暴露在化学物质中会受到干扰,导致灵敏度下降,当处于极限状态时,传感器可以通过程序处理,回复到初试的校准状态,在不符合规范的范围内使用传感器,不仅会导致几乎3%的临时漂移信号,而且会加速产品的老化,转为正常的使用范围后,会渐渐恢复校准状态;温度是影响气体相对湿度的关键,因此测量时最好让湿度传感器工作温度相同。(6)封装信息,如下图:图3-10 DHT11的封装信息3.2.2传感器电路设计DHT11是数字型温湿度传感器,可直接以数字方式传输所采集的当前环境温湿度,DHT11采用的是单总线通信,因此只需将单片机的一个IO端口与DHT11的通信接口连接就可以实现数据的采集和传送,相对于其他电路来说比较简单。如图3.4所示:图3-11 传感器电路3.3 LCD显示单元硬件3.3.1 LCD液晶分析1,字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块2,LCD1602主要技术参数:,如下表所示工作电压:4.55.5V容量162个字符最佳工作电压 5.0V工作电流2.0mA字符尺寸2.954.35(WH)mm表3-4 1602的主要技术参数3,引脚功能说明 如下表所示:1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表 编号符号引脚说明1VDD正极2VSS地3VL液晶显示偏压4RS数据/命令选择5R/W读/写选择6E使能信号7D0数据8D1数据9D2数据10D3数据11D4数据12D5数据13D6数据 续表2.51602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表 编号符号引脚说明14D7数据15BLA背光源正极16BLK背光源负极表3-5引脚接口说明表4,管脚图,如下图所示:图3-12 LCD1602的管脚图5,其中实物图如图2.10所示,图3-13 1602字符型液晶显示器实物图LCD1602主要有两种,主要区别在于是否背光,它的控制器主要为HD44780,带背光的比不带背光的厚,在应用中是否带背光并不影响使用,两者尺寸差别如下图所示:图3-14 1602LCD尺寸图液晶显示模块是一个比较慢的显示器件,因此在执行指令之前要首先确认模块的忙标志处于低电平,表示空闲,不然此指令失效,输入显示字符地址后会显示字符,图2.12是1602的内部显示地址。图3-15 1602LCD内部显示地址3.3.2 LCD电路设计在日常生活中,我们对液晶显示器并不陌生,它已作为很多电子产品的通过器件,比方在计算器、万用表、电子表及很多家用电子产品中都可以看到,显示的主要是数字、专用符号和图形。显示模块选用1602字符型液晶模块,它是目前工控系统中使用最广泛的液晶屏之一,由于它显示的质量高,电路图如图3-16所示,1602字符型液晶模块是点阵型液晶,驱动方便,经过编程后显示内容多样化。图3-16 显示电路3.4系统的蜂鸣器电路微型计算机控制系统中,为了安全起见,对于一些重要的参数或系统,都设定有紧急状态报警系统,以便于提醒操作人员注意,或者采取紧急措施,本设计采用把计算机采集的数据进行数据处理、标度变换、数字滤波之后,与该参数上下限与给定值进行比较,如果高于上限值则进行报警,否则就作为采样的正常值,进行显示12。本设计采用峰鸣音报警电路。如图3-17所示。蜂鸣器额定电流30Ma,而对于AT89S51单片机,P3口的灌电流为15mA,由此可见,仅靠单片机的P3口电流是不能驱动蜂鸣器的,必须使用晶体管放大电路,为了使单片机的功率更小,所以使用PNP型晶体管,当外部环境的温度或者湿度超过预设值的时候,基级变为低电平,蜂鸣器导通鸣叫11。图3-17 蜂鸣器电路3.5小结硬件是系统的基础、骨架,起着至关重要的作用。本章详细介绍了本无线监测系统的硬件部分,包括所用器件、芯片的的介绍和对应的电路。在设计硬件电路时, 我们首先应分析系统的功能,根据功能来确定所需的硬件模块,然后根据功能参数来选择相应的器件。 第四章 系统软件设计 由第三章可知,监测系统由硬件和软件两部分组成,第三章已经介绍了监测系统的硬件部分,本章将介绍系统软件部分的设计。如果说硬件是骨架,则软件就是血液,是软件让硬件有了强大的生命力,所以说软件的设计也是一个非常重要的部分。根据温湿度监控系统功能,系统软件流程图如图4-1所示;图4-1系统控制流程本次设计主要是能够实时显示出当前确切的温湿度,并且在高于预设值的时候能够发出蜂鸣。一旦接通电源,蜂鸣器首先蜂鸣,接着LCD初始化,采用八位的数据端口,两行显示,5*7的点阵,其中第一行显示的湿度预设值,根据键盘我们可以加减数值,第二行显示的是实时的温湿度值,在程序设计中,分别定义温湿度参数,根据数据转换过来的数值,判断是否超过了预设值,本次设计温度初试值设定为32,湿度初始设定为34%,等待传送的数值连续20次都超过预设值的话,蜂鸣器便会蜂鸣警报,1602显示当前的温湿度值,再次循环判断,如果没有超过预设值,蜂鸣器不会蜂鸣,1602正常显示,也同样再次循环。4.1系统硬件驱动程序设计4.1.1 SHT11采集温湿度软件设计SHT11是数字型温湿度传感器,输出信号是单片机可以识别的数字信号。单片机通过SHT11的SCK线和DATA线控制其内部的状态寄存器,从而控制SHT10采集温度和湿度数据并传送给单片机。传感器接受和发送信息,然后将接收来的信息作出相应的判断和处理,然后反馈到显示器,详见附录源代码。4.1.2 LCD1206液晶显示软件设计1602将接受来的信息进过字符转换,反馈到了液晶屏上面,同时我们可以根据需要加减所学要的预设湿度值,详见附录代码。4.3 小结本章主要介绍了系统的软件设计,软件作为系统不可缺少的一部分,其精心设计也是非常有必要的。一般软件设计时,也是分模块设计,而且编写程序前先画一个程序流程图,程序流程图相当于逻辑功能的设计,然后根据流程图一步一步编写程序,这样可以使思路清晰、增大软件开发的成功率。第五章 谢辞一学期的电子测量课程学习中,大作业是一个很重要的环节。从最初的选题,构思,画PCB直到完成设计,这中间,查找资料,同学交流,每一个过程都是一次成长和对自己的一次的检验。本次设计是基于单片机的温湿度设计,包括硬件电路和软件两部分。在硬件设计过程中我学习了protel画图软件,Protel是电路设计最常用到的一个软件。从最基本的创建工程,原理图设计,PCB设计学起。直到最后完成这次大作业的电路设计,这过程中,我基本掌握了掌握了protel的基本应用。在软件设计过程中,我基本是一步步开始学起的,我学到了很多编程技巧,同时也掌握了一些编程思想。通过本次设计,对于主要芯片AT89S51,DHT11,LCD1602有了基本的了解,基本掌握了这些芯片的基本功能。以及学会了通过软件控制这些芯片。此次大作业让我受益良多。参考文献1 孙宏宇.牛舍环境及供料自动控制系统的研究D.吉林农业大学,2008.2吴乾,田庆吉.C语言在现代计算机教学中的地位及发展趋势J.中国科技纵横,2010,(21):146-146.3 汤武辉.Proteus仿真软件与单片机实验教学N.长江大学学报(自然版),2010,07(3):408-409.4 王剑,朱涛,李冬.protel 99se电路仿真在电子实验教学中的应用J.2010,(5):62-64.5 彭孝全 基于APD的红外极微弱光探测器的设计D.广东工业大学. 6 王国防.基于nRF24E1的数据采集及无线传输系统的研究D.河北科技大学,2009.7张冬林,李鑫,戴梅.基于DHT11的低成本蚕室温湿度自动控制系统设计J.现代农业科技,2010,(18):14-15 .8 徐春河.浅谈AT89S51J.制造业自动化,2010,(12):80-82.9吴汉清.常用的典型单片机资料J.无线电,2007,(11):72-80.10叶健斌.基于单片机嵌入式系统的GPS应用J.电子质量,2008,(7):16-24.11 刘宝元,张玉虹,姜旭,段存丽.基于单片机的温湿度监控系统设计J.国外电子测量技术,2009,(12):77-80,83.12王静.通用库房温湿度测控系统D.中国海洋大学,2009.13陈汝全.实用微机与单片机控制技术M电子科技大学出版社1995.7 12.附录I:系统电路原理图 附录II:系统PCB图附录III:系统驱动程序代码#include at89x52.h#include intrins.h typedef unsigned char U8; /* defined for unsigned 8-bits integer typedef signed char S8; /* defined for signed 8-bits integer typedef unsigned int U16; /* defined for unsigned 16-bits integer typedef signed int S16; /* defined for signed 16-bits integer typedef unsigned long U32; /* defined for unsigned 32-bits integer typedef signed long S32; /* defined for signed 32-bits integer typedef float F32; /* single precision floating point typedef double F64; /* double precision floating point #define uchar unsigned char#define uint unsigned int#define Data_0_time 4 /相当于用Data_0_time代替4.sbit DQ = P30 ; /-定义区-/U8 U8FLAG,k;U8 U8count,U8temp;U8 U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L,U8checkdata;U8T_data_H_temp,U8T_data_L_temp,U8RH_data_H_temp,U8RH_data_L_temp,U8checkdata_temp;U8 U8comdata;U8 outdata5; /定义发送的字节数 U8 indata5;U8 count, count_r=0;U16 U16temp1,U16temp2;void COM(void); void Delay2(U16 j) /延时函数 U8 i; for(;j0;j-) for(i=0;i27;i+); void Delay_10us(void) /延时10us的延时函数. U8 i; i-; i-; i-;i-; i-; i-; void COM(void) U8 i; for(i=0;i8;i+) U8FLAG=2; while(!DQ)U8FLAG+);Delay_10us(); Delay_10us();Delay_10us(); U8temp=0; if(DQ)U8temp=1; U8FLAG=2; while(DQ)U8FLAG+); /超时则跳出for循环 if(U8FLAG=1)break; /判断数据位是0还是1 / 如果高电平高过预定0高电平值则数据位为 1 U8comdata=1; /左移1位 U8comdata|=U8temp; /U8comdata与U8temp相或,结果保存在U8comdata中. /-/-湿度读取子程序 -/-/-以下变量均为全局变量-/-温度高8位= U8T_data_H-/-温度低8位= U8T_data_L-/-湿度高8位= U8RH_data_H-/-湿度低8位= U8RH_data_L-/-校验 8位 = U8checkdata-/-调用相关子程序如下-/- Delay();, Delay_10us();,COM(); void RH(void)/主机拉低18ms DQ=0; Delay2(180); DQ=1; /总线由上拉电阻拉高 主机延时20us Delay_10us(); Delay_10us(); Delay_10us(); Delay_10us(); /主机设为输入 判断从机响应信号 DQ=1; /判断从机是否有低电平响应信号 如不响应则跳出,响应则向下运行 if(!DQ) /T ! U8FLAG=2; /判断从机是否发出 80us 的低电平响应信号是否结束 while(!DQ)U8FLAG+); U8FLAG=2; /判断从机是否发出 80us 的高电平,如发出则进入数据接收状态
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论