上海交通大学温度湿度监控系统仿真设计研究报告设计题目:基于SHT11的温度湿度监控系统Proteus仿真设计学院:电子信息与电气工程学院姓名:2019年5月24日设计任务书题目基于SHT11的温度湿度监控系统Proteus仿真设计一、设计的目的1.将理论知识运用于实践当中,掌握模拟电路设计的基本方法、基本步骤以及基本要求。在实践中了解电子器件的功能与作用。2.学会温湿度监测系统的设计方法,完成要求的性能和指标3.锻炼、提高在电子设计中发现问题、分析问题、解决问题的能力。二、设计的内容及要求1.设计一套基于51单片机的温湿度Proteus仿真监控系统;2.采用高精度SHT11温湿度传感器模块;3.LCD液晶实时显示当前环境温度、湿度值;4.设计报警单元,实现系统对超限温湿度监控报警;5.设计输入单元,可对系统正常温湿度范围进行调节;6.仿真系统能够可靠、稳定地运行;三、指导教师评语四、成绩指导教师(签章)年月日摘要在日常生活中,温度、湿度是两种最基本的环境参数,是与人类的生活、工作关系最密切的物理量,也是各门学科与工程研究设计中经常遇到的,必须精确测量和不可忽略的物理量。从工业炉温、环境气温到人体温度,从空间、海洋到家用电器,每个技术领域都离不开温度、湿度的测量与监控。SHT11是基于CMOSens技术的新型智能温湿度传感器,它将温度湿度传感器、信号放大调理、A/D转换、二线串行接口全部集成于一个芯片内,融合了CMOS芯片技术与传感器技术,使传感器具有品质卓越、超快响应、抗干扰能力强、性价比极高等特点。温湿度监控系统的软件部分是以Keil为开发平台,C语言为软件系统的开发语言,同时采用模块化编程。具体分为以下几个部分:主控制、温湿度采集程序、温湿度数据处理程序、LCD显示程序、按键设置程序和LED,蜂鸣器报警程序。系统通过SHT11温湿度传感器感应周围的环境的温度和湿度,通过单片机对采集到的数据进行读取处理,经过LCD1602显示模块实时显示温湿度数据,同时可以通过按键模块对温湿度报警上、下限值进行设定。当SHT11读取的温湿度值不再设定范围内时,报警模块LED灯指示故障信息,同时蜂鸣器报警;当温湿度读取数据正常后,LED灯熄灭,蜂鸣器关闭。关键词:51单片机;SHT11传感器;温湿度监控;Keil;C语言目录1.系统概述.........................................................61.1课题研究意义..................................................61.2课题研究主要内容..............................................62.系统总体设计.....................................................73.硬件设计.........................................................83.1单片机最小系统................................................83.1.1AT89C51介绍...............................................83.1.2晶振电路.................................................103.1.3复位电路.................................................103.1.4上拉排阻电路.............................................113.2SHT11温湿度传感器...........................................113.3LCD1602液晶显示模块.........................................143.4按键模块.....................................................163.5报警模块.....................................................173.5.1蜂鸣器报警模块............................................173.5.2LED报警模块..............................................184.软件设计........................................................194.1软件开发平台.................................................194.2主程序设计...................................................204.3SHT11程序设计...............................................204.4LCD1602程序设计.............................................214.5报警模块程序设计.............................................224.6软件抗干扰措施...............................................235.仿真与测试......................................................235.1仿真设计平台.................................................235.2仿真结果分析.................................................236.总结............................................................247.致谢............................................................261.系统概述1.1课题研究意义在现代工业生产过程中,温度、湿度对于生产来说是最主要的参数,它们是关乎产品质量和产品效率的物理量,在工程研究与各个领域也是极其重要,必须精确测量和不可忽略的物理量。自古以来,无论是工业的温度湿度、自然环境的温湿度,还是人体温度;从航天学、航海学到农业学,每个技术领域都离不开温度和湿度的检测与控制。工业生产中,当温湿度度测量不准确,很可能导致产品的失败,阻碍工业的发展,在家庭生活发面,但温湿度监控不准确,很可能导致家庭电器的正常运行,不能达到预想的工作效果,在设备比较密集的核心地带,如果温湿度控制不精确,很有可能导致设备故障的发生。因此,温湿度监控系统的研究对我们人类生活具有重要的意义。1.2课题研究主要内容本设计包括硬件部分和软件部分设计。本设计的硬件是以51系列单片机为核心、SHT11传感器为采集模块、LCD1602为显示显示模块、按键输入模块和报警模块共同构建的温湿度监测系统。包括单片机最小系统模块设计、传感器采集模块设计、液晶显示模块设计、按键模块设计和报警模块设计部分。系统软件则是基于Keil开发平台,以C语言为开发语言进行,采用模块化编程,构建温湿度监控系统从数据采集、处理、显示、外围输入和故障动作等整个过程。2.系统总体设计本课题设计的仓库温湿度监测系统主要是利用AT89C51单片机最小系统为核心,包括晶振电路、复位电路和排阻电路,SHT11温湿度传感器对环境温湿度的采集,经过单片机进行数据处理,最终通过LCD1602液晶显示模块准确、快捷、实时地显示出当前环境的温度和湿度,同时,按键模块可设置温湿度的上下限值,当采集的数据不在设定范围内时,实现LED和蜂鸣器报警,从而达到对环境温湿度监测的目的。本系统的总体设计如下图2所示。51单片机晶振电路复位电路SHT11传感器LCD1602显示模块按键设置模块报警模块图2系统总体设计框图3.硬件设计3.1单片机最小系统3.1.1AT89C51介绍AT89C51单片机是一款MCS-51系列的CMOS8位单片机,具有微功耗、高性能等特点。该芯片内部含有4K字节的可反复擦除的只读程序存储器(PEROM)以及128字节的随机存取数据存储器,同时该芯片内部还有Flash存储单元以及8位的中央处理器(CPU),该芯片利用高密度、非易失性存储等先进的生产技术,兼容标准MSC-51指令系统,其强大的功能对各个场合提供了便利,可灵活的应用在各种行业领域。对于51系列的单片机外部结构总共有40个引脚,其主要采用的是双列直插式结构,其中内含6条控制信号线、2条电源线(Vss与GND)和4个8位并行I/O接口(P0、P1、P2、P3)。P3接口同时还具有第二功能,根据引脚不同的功能我们可以将其划分为以下几类。具体详见下图3.1.1。图3.1.1AT89C51单片机1.电源引脚VCC和VSS其中VCC接+5V电压。VSS接地。2.时钟电路引脚XTAL1和XTAL2其中XTAL1端口用来接外部晶体以及微调电容的一端,其作用是用来作为振荡反相放大器的输入端口。如果需要采用外部时钟信号时,必须将该引脚接地。XTAL2用来连接外部晶体与微调电容的另外一端,其具体作用是用来作为该电路的输出端口。如果我们需要采用外部时钟电路进行振荡时,我们必须给XTAL2端口输入时钟脉冲信号。3.控制和复位引脚PSEN、ALE、RST/VPD和EAALE:如果需要访问外部存储器时,ALE端的信号输出主要用于锁存地址的低位字节。PSEN:主要输出的外部程序存储器的读选通信号。EA:如果该端口保持高电平信号时,则表示只访问单片机内部程序存储器。如果该端口为低电平信号时,表示只访问外部程序存储器,而不管有没有内部存储器。RST/VPD:单片机复位引脚,主要用来维护程序的正常运转,当程序出现问题或者跑飞速,该引脚发出2个机器周期的高电平信号,对其进行复位,让其正常工作运行。4.输入/输出(I/O)引脚P0、P1、P2、P3P0端口是双向8位三态I/O口,如果需要连接部存储器时,该端口与地址总线的低8位及数据总线进行复用,以吸收电流的方式驱动8个TTL负载。P1,P2,P3口都是8位准双向I/O口。以下是该单片机的主要性能参数:(1)具有4K字节可以用来反复擦除Flash闪存存储器,具有100次的擦除周期。(2)具有三级加密程序存储器。(3)全静态操作,6个中断源。(4)含有128×8字节的RAM,32个可用来编程的8位I/O口线(P0、P1、P2、P3)。(5)含有2个16位的定时器/计数器。(分别为P3.4口和3.5口)。(6)拥有微功耗空闲模式以及掉电模式,同时还具备可编程串行UART通道。3.1.2晶振电路单片机的工作过程要对各种指令在时间上有明确的次序,这种时间次序也叫做时序,所以单片机需要产生一个时钟信号。晶振电路如图3.1.2所示。图3.1.2晶振电路产生时钟信号的方式是:在XTAL1(18脚)和XTAL2(19脚)引脚接入一个振荡电路。用两个22pF电容的作用是开启振荡器和调节振荡频率。接入12M晶振来确定时钟周期,此时产生的信号为单片机最基本的时间单位,即时钟周期,用振荡频率的的倒数代表它的大小(1/fosc)。3.1.3复位电路复位电路在单片机设计中是一个必不可少的部分。单片机在刚开始运行的时候需要进行一次复位,以确保整个系统电路在要开始运行时保持一种最初状态,保证一开始的运行正常。AT89C51单片机的第九引脚RESET,当这个引脚接收到两个机器周期(24个振荡脉冲周期)的高电平时,就会发生复位。复位电路的实现方式有很