1、本科毕业设计(论文)题 目 基于单片机的智能 加湿器设计 姓 名 * 专 业 电子科学与技术 学 号 * 指导教师 * 郑州科技学院电气工程学院二一五年五月目 录摘 要IAbstractII1 绪论11.1 选题背景和意义11.2 发展现状及前景21.3 设计任务32 系统硬件设计52.1 总体设计52.2 单片机模块62.2.1 单片机介绍62.2.2 单片机的特点72.2.3 单片机最小系统92.3 传感器模块102.3.1 温湿度传感器选择方案102.3.2 DHT11数字温湿度传感器112.3.3 传感器电路142.4 液晶显示模块152.4.1 显示器的设计方案152.4.2 160
2、2字符型液晶显示屏152.4.3 1602LCD电路182.5 报警电路模块192.6 按键模块202.6.1 输入设计方案202.6.2 按键电路202.7 系统电路工作原理213 系统软件设计233.1 主程序设计233.2 温湿度检测控制模块设计243.3 液晶显示模块设计254 系统调试与分析274.1 软件调试274.2 程序调试284.2.1 KEIL软件简介284.2.2 调试过程294.3 调试分析29总 结32致 谢34参考文献35附录1 实物图36附录2 源程序37基于单片机的智能加湿器设计摘 要目前在我们的日常生活中,加湿器被应用到很多领域,可是市场上大多数的加湿器都需要
3、通过手动来控制加湿器的开启和关闭,而且不能对空气中的的温湿度进行实时且精确的监测,使得人们在使用加湿器的过程中出现一些意想不到的问题,如对空气过度加湿,过多的空气湿度就会对人体健康造成负面影响;加湿器工作时出现干烧的情况还会给我们带来安全隐患。因此在现有加湿器的基础上开发出一种具有智能控制功能的加湿器显得尤其必要。本次设计以STC89C52单片机与温湿度传感器为系统的设计核心,运用温湿度传感器DHT11对空气中的温湿度信号进行采集,并利用它处理信号的功能,将采集到的温湿度信号转换成数字信号,再通过单片机的可编程能力对该数字信号进行分析与处理,将处理后的数据通过1602液晶显示屏显示出来,实现对
4、空气中的相对湿度的实时显示功能,同时单片机也能够智能控制加湿器的工作状态,以达到自动控制加湿器的目的。该设计还拥有水位监测电路和报警电路,实现加湿器的防干烧功能。该系统的设计电路简单,检测数据的精度高,且具有较高的可靠性。关键词:加湿器;STC89C52单片机;温湿度传感器DHT11;1602液晶显示屏INTELLIGENT HUMIDIFIER DESIGN BASED ON SINGLE CHIP MICROCOMPUTERAbstractAt present in our daily life, the humidifier can be used in many areas, but
5、the majority of the markets need to manually control the humidifier humidifier is opened and closed, and can not be real-time and accurate monitoring of temperature and humidity in the air, which makes people some beat all problems occur in the process of the humidifier, such as the excessive air hu
6、midification, air humidity will cause too much negative impact on human health; in the dry situation will bring hidden trouble to our humidifier work. Therefore, based on the existing humidifier on the development of a kind of intelligent control function of the humidifier is particularly necessary.
7、This design uses the STC89C52 microcontroller with temperature and humidity sensors for the design of the core system, using temperature and humidity sensor DHT11 to collect temperature and humidity signal in the air, and use it in signal processing function, the temperature and humidity of the coll
8、ected signal is converted into digital signal, the digital signal is single chip programmable ability analysis and processing, the processed data through 1602 LCD display, real-time display function of the relative humidity in the air, and the MCU can also work state of intelligent control of the hu
9、midifier, in order to achieve the purpose of automatic control humidifier. The design also has a water level monitoring circuit and alarm circuit, dry burning prevention function of humidifier. The design of the circuit of the system is simple, high precision of detection data, and has high reliabil
10、ity.Keywords: humidifier; STC89C52 MCU; temperature and humidity sensor DHT11; 1602 LCD display基于单片机的智能加湿器设计1 绪论目前加湿器被普遍应用于很多领域,随着科学技术的发展与进步,温湿度检测技术趋于成熟,以温湿度检测技术为设计核心的加湿器也朝着小型化、低功耗和智能化方向发展1。单片机以较高的集成度和稳定的性能,使其在智能加湿器的设计方面具备更加显著的优势。1.1 选题背景和意义随着经济的快速发展,人们的生活水平也逐渐提高,伴随着的是生活环境与工作环境的质量渐渐被人们重视起来。当空气中的湿度没有
11、达到一定的湿度值时,会给我们的日常生活和工作带来负面影响。如果我们长期生活在干燥的空气环境中,人体的舒适度值会降到很低,甚至会对我们的身体健康带来许多未知的隐患;当我们在工作的时候还会提高产品的不良率从而降低生产产品的速度,引起各式各样的不良影响,此时加湿器就显得尤为重要,我们可以通过使用加湿器来有效地增加室内空气中的湿度,湿润干燥的空气。水由于表面张力的作用,会主动形成水滴的形状,同时会吸附空气中的灰尘。当室内空气中的粉尘和漂浮的烟雾与水分子结合后,会形成一个个小的颗粒,使空气中的灰尘沉淀下来,而且可以有效的去除室内空气中的异味,使空气变得清新。在本次的设计中,主要是运用加湿器调节空气中的湿
12、度,以达到提高人体舒适度的目的。研究发现,湿度不仅影响人们的生活质量,在工业制造和产品质量方面同样有着重要的影响。塑料薄膜大棚、厂房和办公室等室内封闭场所,一般都需要用智能加湿器来调节空气的湿度,使室内空气的湿度达到合适的程度。在日常生活中我们经常用舒适度来描述环境质量,但是人体舒适度与大气探测仪器检测到的各种气象要素结果有很大的不同,它不是一个精确的数据参数,仅仅是人体对外界气象环境的一种主观感受。人体舒适度指数是人为制定的一种生物气象指标,通过人体舒适度指数我们可以更加清楚的了解我们所在环境下的舒适感,且可以显示出在不同的天气条件下,人体可以感觉到的舒适度值。在众多的影响因素中,温度、相对
13、湿度、气压、风速这些气象因素,对人体的舒适度产生很大的影响。最佳的温湿度范围是40%RH60%RH2,人体在此温湿度范围内的舒适度最佳。经研究发现:生活在适宜湿度的空气环境下的生物体才能长期保持活力。将一些我们常用的木质家具长期放置在过于干燥的空气环境下,会对其造成一些不同程度的损坏,如乐器、家具和木质装修等很可能会出现变形、老化甚至干裂的情况。因此,我们在存放以上物品时要格外注意室内湿度,标准情况下应保持在40%-60%RH范围内,然而对于生活在河北地区的家庭来说,冬天的室内湿度平均为10%-15%RH,干燥的空气环境下,出现高压静电的情况十分普遍。家用电器及办公电器的广泛使用,使得静电出现
14、在我们生活中的各个角落3。当静电情况十分严重时,对我们的生活环境也是一种污染。生活或工作在此环境下的人心情容易烦躁,有时甚至会出现头晕胸闷的情况,严重影响我们的身体健康。智能加湿器可以放出一些富含负氧离子的空气,既调节为适宜湿度的空气,这些空气均匀的布满整个空间,可以很大程度的消除静电现象,还可以过滤空气中异味,制造出更加清新、芳香的空气。因此,对空气中的湿度适当的进行调节,无论是对与我们的身心健康还是工作学习,都有着不可忽视的重要意义。调节室内湿度的方法有很多,我们可以在室内洒水或者放置水族箱,但是这种调节空气湿度的方式是十分缓慢的,而且我们无法控制它的影响程度。如果加湿的程度过大,也会对人
15、体造成不好的影响,如今大多数的家庭和公司都是应用加湿器来对空气加湿。本次设计基于单片机技术,对智能加湿器的部分功能实施进一步的改动,使其可以根据用户的个人需求进行调节,而且拥有智能控制功能,其能够根据传感器检测到的实时湿度自动控制加湿器的工作状态。在本设计中,加湿器的智能控制能力得到了加强,完全可以满足用户对产品的简单要求,在产品开发方面具有十分重要的意义。1.2 发展现状及前景智能加湿行业在我国发展了将近20年,通过这些年空气质量概念的普及和人们对身体健康意识的提高,加湿器的功能和作用也渐渐被人们所了解,并逐渐被人们接受和青睐。可是,由于加湿器这一新兴行业在我国发展的比较晚,它相应的一些产品
16、质量标准没有得到规范化,这为广大用户在选择上带来了一定的选择困难。众多厂商只跟风不跟质量的行为,导致了加湿器行业产品质量的参差不齐,使消费者的合法权益受到了侵害。加湿器功能主要是增加室内空气的湿度,使湿度控制在相对健康的状态下。加湿器按其功能划分为三种:电热加湿器、超声波加湿器和净化加湿器。电热加湿器主要是对水进行加热使其蒸发,利用水蒸汽来加湿空气,此种加湿方式容易发生热蒸汽烫伤人的情况,已基本被淘汰。超声波加湿,主要是运用超声波的高频震荡原理,把水分子震荡、雾化为微小的雾状颗粒,然后应用风动装置把这些雾状颗粒吹送出去,实现加湿的功能。净化加湿,在空气循环系统中应用水幕洗涤的技术,可以有效的过
17、滤空气中的尘埃,且把空气中的杂质吸附在高效过滤器上,再经过风动装置将过滤后的水分子稀释到空气中,使得空气得到净化且加湿,它是目前最新的加湿器产品。我国的加湿器产业发展较晚,产品的人均占有率比日本、美国、韩国等国家低的多,我国民众对空气质量和加湿器、净化器产品的进一步了解,能够促进国内加湿器行业的发展,提升国民健康水平,更能提高国民的生活品质。随着社会经济的快速发展,人民的生活水平也逐渐提高。同时,人们也更加重视生活质量和身体健康,空气加湿器也慢慢的走进了更多的家庭中,并且在干燥地区很受人们的欢迎。空气加湿器在国内仍是新兴的产品,加强对加湿器的开发和研究的力度,不但促进了我国加湿器行业的发展,而
18、且能够提高人们的生活品质和健康水平。近年来,人们对加湿器的功能与审美设置提出了更高的要求,为了实现这些要求,加湿器的产品类型变得更加多样、材质处理更加细腻,且造型设置更加丰富多姿。1.3 设计任务本次设计的重点就是在现有的加湿器基础上,增加防干烧功能,提高加湿器系统的智能控制能力。该系统可以根据用户的需要,手动设置最佳相对湿度值,并且在室内空气湿度发生变化时,能够自动开启或关闭加湿器,使湿度值保持在设定的湿度范围内,达到智能加湿的目的。智能加湿器系统是通过温湿度传感器来采集空气中的温度和湿度的信号数据的,采集到的数据经过STC89C52单片机的分析和处理,在1602LCD上显示出当前湿度与设定
19、的湿度值。另外再添加时钟电路、键盘电路和报警电路。该系统具备手动模式和自动模式,在手动模式里我们可以根据自己的实际需要来设定最佳湿度值;自动模式中的最佳湿度值是系统设计的初始值,这两种模式可以通过设定的按键来切换。在本次设计中加湿模块运用二极管模拟的方式,当系统检测到驱动加湿器模块的管脚出现低电平时,二极管点亮演示加湿;水位监测模块检测到低水位,既管脚电平变为低电平时,蜂鸣器发出报警信号,防止出现加湿器干烧的情况。2 系统硬件设计2.1 总体设计根据设计要求确定了智能加湿器的整体设计方案,该设计方案由单片机、温度传感器、1602LCD以及按键输入等部分组成。智能加湿器需满足以下要求:(1)系统
20、直接由5V的直流电源提供电压;(2)用户能够自由设置系统的最佳湿度值;(3)环境湿度低于40时系统会自动加湿;(4)检测得到的数据可以通过显示模块显示。总体设计的智能加湿器功能原理图如图2.1所示。单片机温湿度传感器按键输入模块温湿度显示模块mokuai加湿模块报警模块图2.1 智能加湿器功能原理图电路中设计了一个手动/自动转换键,选择自动模式,相当于按下复位键,系统恢复默认最佳相对湿度,温湿度传感器对空气中的温湿度进行检测,最后运用液晶屏将经过计算后的数据显示出来,如果检测到的湿度比最佳湿度范围低就开始加湿,超过最佳湿度范围就停止加湿。在系统的显示模块中,STC89C52芯片的P0端的八个引
21、脚分别与液晶显示屏的数据输入端口D1D8相连,P2.7和P2.6口分别接到LCD的寄存器选择端和使能端,RW为读写信号选择端口,端口电平为高电平时进行读操作,低电平时进行写操作。在本次设计中只进行写操作,所以读写信号选择端口接地。RS是寄存器选择端口,当RS=0时系统进行写指令操作,RS=1时进行写数据操作;E为使能端,当E端电平信号出现高脉冲即上升沿时,液晶屏开始读取显示信息,并在信号电平跳变到下降沿的时候执行指令4。温湿度传感器连接到单片机的P1.2脚,它采用的数据传输格式是单总线格式,可以单次输出高达40位的数据,此次设计只显示温度和湿度的整数部分,因此只读取整个数据的八位湿度整数部分与
22、八位温度整数部分。选择的具体实施方案;系统具备自动加湿和手动加湿两种模式,用户可以根据自身需要来选择,且能够手动更改相对湿度的最优值;单片机通过温湿度传感器检测空气中的温度和湿度数据,并将测得的数据送入主控模块,主控模块可以将测得的实时湿度与用户设计的最佳相对湿度进行对比,以此来决定是否需要加湿;主控模块可以根据水位的高低来判断是否需要报警,当需要报警时,主控模块不但控制报警模块发出报警信号,而且控制加湿器关闭加湿;运用液晶显示器显示出室内空气的实时温度和湿度,且将相对湿度的最优值显示出来;利用LED灯演示加湿和水位高低。2.2 单片机模块2.2.1 单片机介绍本次设计的系统运用的中心控制元件
23、是STC89C52单片机,STC89C52是深圳宏晶科技公司开发、TSMC公司生产的一种增强8051内核单片。其采用了基于Flash的在线编程技术,在对单片机编程写软件时无需采用专用编程器,可以通过PC直接对STC系列单片机进行编程,使单片机应用系统的开发变得更加简单7。STC系列单片机性能优秀,其编程十分方便,非常适合初学者使用,最重要的是它比较低廉。该芯片具备8 bit CPU与在线可编程Flash,应用该芯片的嵌入式控制系统变得更加高效、流畅。STC系列单片机的正常工作电压为3.3V5.5V,如图2.2是STC89C52的实物图。图2.2 STC89C52实物图STC单片机产品种类十分繁
24、多,现有超过百种的单片机。STC单片机按照工作速度和内部配置的差异,分为许多系列的产品。根据运行速度能够分为12T/6T和1T系列产品。所谓1T是指单片机运行一个机器周期只需要一个时钟周期,运行速度大大加快。STC89、STC90和STC11/10系列属于基本配置,而STC12/15系列产品增加了PWM、A/D和SPI等接口模块。每个系列产品的差异主要是片内资源数量上的差异。在单片机选型时,应该根据控制的实际需求,选择合适的单片机,即单片内部资源要尽量满足控制系统要求,而减少外部接口电路,保证单片机应用系统的高可靠性和高性价比。我们现在使用比较的多的是STC89C51/STC89C52等。如图
25、2.3是STC89C52的管脚分布图。图2.3 STC89C52管脚图单片机是一个功能很强大的芯片,在此芯片上人们把计算机的一些主要组成部件都集中起来,如中央处理器、定时/计数器和I/0接口电路等部件,同时集成在一个小小的芯片上,可以说单片机就是一个微型化的计算机。所以,想拥有一个单片机控制系统的话,我们只需要为单片机添加适当的软件及外部设备。2.2.2 单片机的特点(1)开发周期短,易于生产,性价比较高。(2)芯片更加微型化,抗干扰能力很强,可靠性能良好。(3)功能完善,接口多。(4)低功耗、低电压。一般在53V的电源电压范围内单片机都可以正常工作,12V是其工作的最低电压,低于此电压后单片
26、机就不再工作。(5)总线多样,易于扩展。单片机的外部结构采用的是三大总线结构,运用此结构能够更加方便的对应用系统功能进行扩展,使的开发应用系统变得更加方便、快捷。外部总线增加I2C和SPI串行总线,应用者可以根据自己的需求进行扩展5。C52单片机的主要功能特性如表2.1所示:表2.1 STC89C52功能特性表主要功能特性可应用MCS51的指令编译8K可编译Flash ROM32个双向I/O口512字节RAM看门狗定时器内置4K BEEPROM3个16位定时器/计数器MAX8101个6向量2级中断结构全双工串行口系统的掉电或空闲模式低功耗可以设置休眠和唤醒功能在实际电路中用到了STC89C52
27、的部分引脚,其主要的引脚和功能为:(1)电源管脚(2根)VCC:正极,接+5V电源。GND:负极,接地线。(2)外接晶振管脚(2根)XTALl:时钟电路的输入脚。XTAL2: 时钟电路的输出脚。(3)控制管脚(2根)RSTNPP:复位管脚,当端口信号为1时单片机会执行复位操作。EA:程序存储器选择端口。接低电平时,ROM读操作只能在在外部程序存储器中进行;接高电平时,对ROM的读操作是从内部程序存储器开始,并可延至外部程序存储器。在该电路中,将其接负极。(4)可编程I/O管脚(32根)STC89C52单片机有P0、P1、P2、P3四个8位的并行输入/输出口,每个端口可以按字节或位进行输入输出,
28、4个并行口一共有32根端口线。P0口:P0口是一个漏极开路型双向输入/输出口,输出能力较强能驱动8个TTL门电路,经常被作为地址/数据分时复用总线使用。内部没有上拉电阻,使用时需添加外部上拉电阻。P1口:Pl口的输入/输出口为8位的双向输入/输出口,通常作为通用输入/输出口使用,在4个I/O口中,它的功能比较单一,只能作为输入/输出使用。电路的内部有上拉电阻,与场效应管共同组成输出驱动电路。因此,P1口作为输出口使用时,已经能向外提供推拉电流负载,无需再外接上拉电阻。P2口:P2口是内部自带上拉电阻,功能复用口。P3口:P3口是和P2口功能基本一样。P3口不仅可以用作通用输入/输出口,还具备第
29、二功能,当P3口的部分口作为第二功能时,剩下的引脚可以单独作为输入/输出口使用6。2.2.3 单片机最小系统(1)时钟电路 STC89C52内部拥有一个振荡器,它是由高增益反相放大器构成的,但是要形成时钟脉冲,在拥有振荡器的同时外部还需要增加电路。引脚XTAL1连接到内部放大器的输入端,引脚XTAL2连接到放大器的输出端。时钟信号是由自激振荡器发出的。引脚XTAL1与引脚XTAL2连接到外部晶体振荡器,且与电容和晶振组成的并联谐振回路相连,构成稳定的自激振荡器。晶体振荡器的震荡频率不是固定值,它的频率范围为1.212MHz,常用的晶振频率是12MHz。电路中的电容值在530pF范围内都可以选择
30、,电容的大小在时钟电路中起到对频率的微调作用。在本次设计中采用振荡频率为12MHz的晶体振荡器,使用22pF的电容。时钟电路如图2.4所示:图2.4 时钟电路(2)复位及复位电路复位是单片机的初始化操作。其主要功能是把PC地址初始化为0000H,使单片机从0000H单元重新开始执行程序。复位是单片机系统的初始化操作,单片机系统在上电启动后都需要先进行复位操作,使系统处于一个确定的初始化状态。当单片机因为各种因素导致系统死机时,可以按下复位键进行复位,使单片机系统回归到初始状态,且从初始状态开始工作7。如图2.5所示电路的复位电路:图2.5 复位电路RST引脚的功能是控制复位信号输入。当RET管
31、脚信号为1且维持2个机器周期时,复位信号有效,单片机系统才会完成复位操作。如果选择使用的晶振频率为12MHz,想要成功完成复位的话,RET端的高电平就应该维持超过2us即两个机器周期的时间。单片机的复位方式有两种:上电复位和按键复位。上电加按键复位电路比上电复位多了一个复位开关。本次设计采用按键复位电路,其复位电路如图2.5所示。按下复位按钮后,电流经过220欧的电阻与RET端口直接相连,复位端引脚信号变为1;当复位按钮弹起后,电流从10K电阻和10uF的电容所在的电路通过,电容恢复到充电状态,复位端发出复位正脉冲信号,该信号持续的时间与电阻与电容电路的时间常数有关。2.3 传感器模块2.3.
32、1 温湿度传感器选择方案方案一:一般情况下,我们检测温度的时候都会用热敏元器件来检测,如热电阻和热敏电阻。其中热电阻的工作原理为:热电阻的电阻值会随温度的变化出现大的波动,当温度升高时电阻的大小也会增大,并且电阻值会随着温度按照近似的线性关系而缓慢变化。热敏电阻的工作原理是热敏电阻的电阻值与温度成非线性关系,并随着温度的升高而迅速变化。一般情况下电阻值与温度呈负指数关系,温度越高电阻值下降的越快,只有少量才具有正温度系数8。有许多方法来检测湿度,其中用湿敏元器件检测空气中湿度是人们常用的方法,湿敏元件分为电容式湿度敏感元件和电阻式湿度敏感元件两种类型。我们经常使用的湿度传感器有高分子电容式和高
33、分子电阻式两种类别。其中高分子电容式湿度传感器的工作原理为:水和高分子材料的介电常数是不一样的,它们的介电常数之和为高分子电容式湿度传感器的介电常数,电容式湿度传感器的介电常数在不同的环境下会受到很大的影响。当被测的雾气状态的水分子通过带有多个孔洞的上电极,扩散到感应湿度的薄膜表面时,薄膜上的极性官能团会吸收这些水分子,进而诱发电容式湿度传感器的介电常数发生变化,改变了湿敏电容器的容量值。高分子电阻型湿度传感器的工作原理为:通常情况下,聚合物膜上的极性基团会对水会产生吸附力。湿度低,由于吸附量很小,不会产生带电离子,其电阻值是比较高的。当空气相对湿度增加,吸附量增大,吸附水的连通性成为导电通道
34、,正、负离子聚合物电解质主要起载体作用。此外,这些被吸附到薄膜上的水分子会解离出氢离子和质子,增强电荷导通性,减小湿度传感器的电阻。湿敏电阻和热敏电阻的在可靠性和精度方面效果不是很好,如果温湿度传感器需要高精度的检测数据的话,选用湿敏电阻和热敏电阻就不是太适合。方案二:采用集成温湿度传感器。集成温湿度传感器最大的优点就是它检测数据的精度高,自带A/D转换功能,可以把检测到的温湿度信号转化为数字信号,并且存放到自身携带的RAM存储器中,单片机系统能够很快的从中读取到数据,将其转换成十进制就是可以得到我们需要的温湿度数值,使用起来十分快捷、便利。DHT11温湿度传感器市面上最流行的,它响应迅速、抗
35、干扰能力强,性价比很高。因此,我选择方案二。2.3.2 DHT11数字温湿度传感器本系统选用DHT11数字温湿度传感器作为温湿度检测元件,DHT11由一个NTC检测温度的元器件与一个电阻式的检测湿度的元器件组成,该传感器可以与高性能的8位单片机相连,是一块可以同时检测温度和湿度的数字传感器。通过单片机和一个简单的电路,它可以检测室内的温度和湿度采集并实时比较,具有性能稳定,响应速度快,抗干扰能力强、性价比高等特点。DHT11通过一个I/O口就可以与单片机系统进行通信,传感器内部的温湿度数据可以一次性的传给单片机。DHT11数字温湿度传感器不需要太大的工作电流,一般情况下最大电流为0.5mA。它
36、的工作电压和单片机的工作电压一样,都是+5V。DHT11外形及引脚说明和描述,如图2.6所示:图2.6 DHT11外形及引脚排列VCC连接到正电压,电压输入范围为3.5V到5.5V;DOUT为数据I/O口也是DATA口;NC为空脚,因为没有扩张,所以引脚未启用;GND为负极。DHT11能够同时对相对温湿度进行检测。DHT11数字传感器输出的是数字信号,减少了预处理信号这一步骤,降低了单片机系统的工作量,提高了系统的使用率。输出为单总线结构,能够有效减少对单片机的I/O口的占用,节省资源并且不用再额外的增加电器元件。湿度测量范围20%90%RH,温度测量范围050;应用范围广泛,在湿度控制、温湿
37、度检测、消费领域的家电市场都有应用。单片机系统与DHT11数字温湿度传感器通过DATA进行通信,DATA选择单总线的数据传输格式,通讯时间为4MS。数据被分为两部分:整数和小数。在本次设计中只用到数据的整数部分,所以小数部分的数值始终为0。具体的数据传输流程如下:数字温湿度传感器DHT11在传输数据时,可以一次性的传输高达40位的数据。数据的传输样式为:8bit湿度整数部分+8bit湿度小数部分+8bit温度整数部分+8bit温度小数部分+8bit校验和9。单片机向DHT11温湿度传感器发送低电平信号(开始信号)后,DHT11开始工作,等到单片机发出高电平信号(开始信号结束)后,DHT11发送
38、应答信号,发送40位数据,并开始收集信号,用户可以有选择的读取部分数据。单片机系统发出开始信号,并被DHT11数字温湿度传感器接收到后,会激活传感器对温度和湿度信号进行采集,DHT11温湿度传感器只有在接收到单片机系统发出的开始信号后,才可以采集空气中的温湿度信号。采集信号结束后,传感器会主动把运行模式转换到低速运行模式。通信流程如图2.7所示:图2.7 DHT11的通讯过程在单片机系统中,总线电平是1时为空闲状态,单片机把总线电平拉低等待DHT11响应时,总线被拉低的持续时间必须大于18毫秒,在本次设计的程序中拉低20MS,保证DHT11能够检测到起始信号。单片机系统拉高电平后,需要维持20
39、us到40us的时间对系统进行延时,在本次的设计程序中延时的时间为40us。发送数据过程如图2.8所示:图2.8数据传输当总线的状态为低电平时,表明DHT11温湿度传感器发出应答信号,应答信号发出后,温湿度传感器把总线的电平拉高等待80us,做好传输数据的准备。每次开始传输1bit数据都会拉低电平50us,数据传输过程中,数字0和1用高电平的持续时长区分。数字0信号的表示方法如图2.9所示。传输数据结束后,温湿度传感器把总线的电平变为低电平,且持续50us,最后上拉电阻把总线电平从低电平变为高电平,使温湿度传感器转换到空闲状态。图2.9 数字0信号传输方法 信号0的传输方式是:数据传输开始阶段
40、结束后,总线电平被拉高,如果该高电平持续的时间为26us到28us,此阶段传输的数据就是信号0。数字1的信号表示方法如图2.10所示:图2.10 数字1信号表示方法信号1传输方式是:数据传输开始阶段结束后,总线电平被拉高,如果该高电平持续的时间为116us到118us,此阶段传输的数据就是信号1。2.3.3 传感器电路DHT11温湿度传感器能够在3V到5.5V的电压下正常工作,结合一些辅助电路可以检测信号,并且能够对检测到的数据进行初步整理。上电后,DHT11传感器为了通过不稳定的状态,需要等待一秒钟,在这段时间不发送任何指令。DHT11与单片机间的通信和同步是通过数据端口来实现,数据端口与计
41、算机连接到P1.2端口,使用4.7K上拉电阻,防止干扰,提高稳定性。因为检测湿度时会受到环境温度的影响,所以我们应该在一个相对稳定的环境下进行湿度检测,在测量湿度的过程中,湿度传感器应在同一温度中。因此,在安装DHT11温湿度传感器时,我们应该注意把温湿度传感器放置到离发热快的元件较远的地方,同时能够保证传感器可以正常的工作。传感器电路如图2.11所示。在本次仿真中,由于仿真软件里没有DHT11温湿度传感器的仿真图,所以在图2.11中的DHT11元器件,只是本人在仿真软件里找的一个与DHT11有着相似管脚的元器件。在实际焊接时,仅仅按照这个仿真图里的管脚连接方式进行连接,元器件还是DHT11传
42、感器,与此没有太大的关系。图2.11 DHT11传感器连接电路2.4 液晶显示模块2.4.1 显示器的设计方案方案一:采用数码管显示。在该设计中我们需要显示很多的信息,数码管数量少的话就很难达到要求,这样的话会加大我们在焊接和排版时会增加很大的负担。方案二:采用LCD显示屏。我们常用的是1602LCD,它可以同时输出32个字符,比一个简单的数码管显示出的内容要多得多。该方案不仅满足系统功能要求,降低系统复杂度。综合考虑,我决定采用方案二。2.4.2 1602字符型液晶显示屏1602液晶显示屏按照其结构可以分为两种类型:有背光与没有背光。两种类型的显示屏在系统应用上没有多大的区别,只不过有背光的
43、显示屏比没有背光的厚一些。总体来说,两者可以通用的。两者尺寸差别如下图2.12所示:图2.12 1602LCD尺寸图本系统选用的显示屏是1602LCD,它是一种字符型的液晶显示屏,能够以点阵的方式显示符号、数字和字母10。带背光的1602液晶显示屏拥有16个引脚,比不带背光的多了一条背光电源线和一条地线,但是它们的控制原理都是一样的。1602型液晶屏有d0-d7共8位的数据总线接口与三个控制端口,能够显示出32个字符。其实物如图2.13所示:图2.13 1602LCD实物图1602LCD主要技术参数:显示容量:16x2个字符芯片工作电压:4.5-5.5V运行电流:2.0mA字符大小:2.95x
44、4.35mm1602液晶显示屏的引脚如图2.14所示:图2.14 1602字符型液晶屏引脚1602液晶显示屏有两种不同的接口,一种为14脚的显示屏它没有背光,另一种是带有背光的16脚显示屏,但它们的主要引脚功能都是一样的,下面就以16脚的显示屏为例介绍一下各引脚功能。引脚功能如表2.2所示:表2.2 1602液晶引脚功能表编号符号引脚说明编号符号引脚说明1VSS电源负极9D2数据2VDD电源正极10D3数据3VL显示对比度调节11D4数据4RS指令/数据选择12D5数据5R/W读写信号选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源的正极8D1数据16BLK背光源的负极在本次
45、设计中,我们用到的1602显示屏是16脚带背光的,下面是用到的各个引脚在单片机系统中每个引脚的连接方式:第1脚:VSS接地。第2脚:VDD接+5V电源。第3脚:VL是LCD对比度的调节引脚,如果显示器对比度太高的话,我们就很难看清楚显示出的内容,所以我们在应用该显示器的时候,可以连接上一个10K大小的可调电阻,用户能够根据实际情况进行调节。第4脚:RS是寄存器选择控制端口,当RS=0时应用指令寄存器,当RS=1时应用数据寄存器。第5脚:R/W为读写信号端口,当该端口的状态为低电平时进行写操作,端口状态为高电平时进行读操作。当RS和R/W的端口信号为“00”时,能够写入指令;当RS和R/W的端口
46、信号为“01”时可以进行读忙信号;当RS和R/W的端口信号为“10”时可以写入数据。第6脚:E端口是使能信号引脚,当该引脚的电平由1变为0时,显示器开始执行命令。第7到14脚:d0至d7口是8位的输入/输出数据传输端口。第15脚:背光源的正极。第16脚:背光源的负极。2.4.3 1602LCD电路本次设计的显示部分采用1602液晶显示屏,可以输出显示预设的最佳湿度值和室内的温度与湿度。RS脚和E脚分别和单片机的P2.7和P2.6相连,D0-D7口和单片机的P0口相连,P0口作为一列8位漏极开路型双向I/O口,常用作地址/数据总线复用口,P0口内部没有上拉电阻,使用时需添加外部上拉电阻。当用fl
47、ash进行编译的时候时,P0口接收到的数据为指令字符,当用flash校准验证的时候,P0口向传感器发送字节指令。因为P0口驱动能力较弱,所以在P0口我们应该再焊接一个上拉电阻。在本次设计中,上拉电阻用的是排阻,1602LCD的电路如图2.15所示:图2.15 1602LCD电路2.5 报警电路模块本次设计的蜂鸣报警电路采用的是有源蜂鸣器,其驱动发声简单通电就能持续发声。主要功能就是通过水位按键将低水位信号送给单片机,单片机检测到该信号后UI进行报警,起到防干烧的目的。蜂鸣器发声原理为:通过电磁线圈的电流会产生磁场,磁场驱动振膜发声,所以轰鸣器需要一定的电流才能发出声音。输出电流小的单片机I/O口,TTL输出水平基本不能驱动蜂鸣器,所以我们需要设计放大器电路,产生一个可以驱动轰鸣器工作的电流,既添加一个PNP型三极管来放大驱动蜂鸣器。在本次设计中轰鸣器电路由蜂鸣器、晶体管和220欧的电阻构成。晶体管放大系统电路中的电流,该电流能够驱动蜂鸣器,限流电阻是用来防止和控制放大电流的