完整版基于51单片机的温湿度检测控制系统本科生学士学位毕业设计.docx

上传人:b****7 文档编号:10804055 上传时间:2023-02-23 格式:DOCX 页数:48 大小:662.59KB
下载 相关 举报
完整版基于51单片机的温湿度检测控制系统本科生学士学位毕业设计.docx_第1页
第1页 / 共48页
完整版基于51单片机的温湿度检测控制系统本科生学士学位毕业设计.docx_第2页
第2页 / 共48页
完整版基于51单片机的温湿度检测控制系统本科生学士学位毕业设计.docx_第3页
第3页 / 共48页
完整版基于51单片机的温湿度检测控制系统本科生学士学位毕业设计.docx_第4页
第4页 / 共48页
完整版基于51单片机的温湿度检测控制系统本科生学士学位毕业设计.docx_第5页
第5页 / 共48页
点击查看更多>>
下载资源
资源描述

完整版基于51单片机的温湿度检测控制系统本科生学士学位毕业设计.docx

《完整版基于51单片机的温湿度检测控制系统本科生学士学位毕业设计.docx》由会员分享,可在线阅读,更多相关《完整版基于51单片机的温湿度检测控制系统本科生学士学位毕业设计.docx(48页珍藏版)》请在冰豆网上搜索。

完整版基于51单片机的温湿度检测控制系统本科生学士学位毕业设计.docx

完整版基于51单片机的温湿度检测控制系统本科生学士学位毕业设计

摘要

本次设计是采用MSC-51系列单片机中的AT89S51和DHT11构成的低成本的温湿度的检测控制系统。

单片机AT89S51是一款低消耗、高性能的CMOS8位单片机,由于它强大的功能和低价位,因此在很多领域都是用它。

DHT11温湿度传感器是一款含有已校准数字输出的温湿度复合传感器,传感器包括一个电阻式感湿原件和一个NTC测温元件,该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。

设计主要包括硬件电路的设计和系统软件的设计。

硬件电路主要包括单片机、温湿度传感器、显示模块、报警器以及控制设备等5部分。

其中由DHT11温湿度传感器及1602字符型液晶模块构成系统显示模块;测温湿度控制电路由温湿度传感器和预设温度值比较报警电路组成;用户根据需要预先输入预设值,当实际测量的温湿度不符合预设的温湿度标准时,发出报警信号(蜂鸣器蜂鸣),启动相应控制。

软件部分包括了主程序、显示子程序、测温湿度子程序。

关键词:

AT89S51;DHT11;温湿度传感器

Abstract

MicrocontrollerAT89S51isalowconsumption,manyareas.DHT11temperatureandtheoriginalsenseofwetandaNTCtemperaturemeasurementdevices.TheproductisfromedbytheAT89S51inMSC-51SeriesandDHT11constitutewhichisalow-costtemperatureandincludesthedesignofandsystemsoftware.

Thetheactualmeasurementofthetemperatureprogram,thedisplayroutines,temperatureands空气6s

迟滞:

<±0.3%RH

长期稳定性:

<±0.5%RHyr

温度

分辨率:

16Bit

重复性:

±0.2°C

量程范围:

25°C±2°C

响应时间:

1e(63%)10s

电气特征

供电:

DC3.5-5.5V

供电电流:

测量0.3mA待机60μA

采样周期:

次大于2秒

引脚说明

(1)VDD供电3.5-5.5V

(2)DATA串行数据,单总线

(3)NC空脚

(4)GND接地,电源负极

2.3.2串行接口(单线双向)

DATA用于微处理器与DHT11之间的通讯和同步,采用单总线数据格式,一次通讯时间4ms左右,数据分小数部分和整数部分,具体格式在下面说明,当前小数部分用于以后扩展,现读出为零.操作流程如下:

一次完整的数据传输为40bit,高位先出。

数据格式:

8bit湿度整数数据+8bit湿度小数数据+8bit温度整数数据+8bit温度小数数据+8bit校验和。

数据传送正确时校验和数据等于“8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据”所得结果的末8位。

用户MCU发送一次开始信号后,DHT11从低功耗模式转换到高速模式,等待主机开始信号结束后,DHT11发送响应信号,送出40bit的数据,并触发一次信号采集,用户可选择读取部分数据.如果没有接收到主机发送开始信号,DHT11不会主动进行温湿度采集.采集数据后转换到低速模式。

总线空闲状态为高电平的时候主机把总线拉低等待DHT11响应,DHT11能检测到起始信号,主机必须把总线拉低,至少大于18ms。

DHT11一旦接收到主机的开始信号,接着就等待开始信号的结束,然后发送80us的低电平响应信号,要读取DHT11的响应信号,必须等待开始信号的结束,并延时等待20-40us后才能够接受,主机发送开始信号后,这时候就可输出高电平或切换到输入模式,接着总线由上拉电阻拉高。

DHT11发送响应信号的时候总线为低电平,DHT11把总线拉高80us之前,必须等到响应信号发送,准备发送数据时,每一bit数据都以50us低电平时隙开始,数据位是0或1是由高电平的长或短来决定。

假如响应信号的读取为高电平,但是DHT11无响应响应,这时候说明路线可能连接不正常,当最后一bit数据传送结束后,DHT11把总线拉低50us,接着总线由上拉电阻拉高进入空闲状态。

2.3.3电气特性

VDD=5V,T=25℃

图2-3-3电气特性(注:

采样周期间隔不得低于1秒钟)

参数

条件

min

typ

max

单位

供电

DC

3

5

5.5

V

供电电流

测量

0.5

2.5

Ma

平均

0.2

1

Ma

待机

100

150

Ua

采样周期

1

2.3.4性能说明

表2-3-4性能说明

参数

条件

Min

Typ

Max

单位

分辨率

8

±

Bit

1

1

1

%RH

精度

25℃

±4

%RH

重复性

±1

%RH

温度

0-50℃

±5

%RH

温度

量程范围

0℃

30

90

%RH

50℃

20

80

%RH

25℃

20

90

%RH

长期稳定性

典型值

±1

%RHyr

迟滞

±1

互换性

可完全互换

分辨率

8

8

8

Bit

1

1

1

重复性

±1

响应时间

1e(63%)

6

30

S

量程范围

0

50

精度

±1

±2

2.3.5引脚说明

表2.3.5DHT11引脚说明

pin

名称

注释

1

VDD

供电3-5.5V

2

DATA

串行数据,单总线

3

NC

空脚,悬空

4

GND

接地,电源负极

注意引脚2在接单片机时,同时要在数据线接一上拉电阻,接到电源上[4]。

2.3.6应用信息

电阻式温、湿度传感器暴露在化学物质中会受到干扰,导致灵敏度下降,当处于极限状态时,传感器可以通过程序处理,回复到初试的校准状态,在不符合规范的范围内使用传感器,不仅会导致几乎3%的临时漂移信号,而且会加速产品的老化,转为正常的使用范围后,会渐渐恢复校准状态;温度是影响气体相对湿度的关键,因此测量时最好让湿度传感器工作温度相同[5]。

2.3.7封装信息

图2-3-6DHT11的封装信息

2.4AT89S51单片机

2.4.1单片机介绍

AT89S51是美国ATMEL公司生产的低功耗、高性能CMOS的8位单片机,片内含4K的可编程的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。

它集Flash程序存储器既可在线编程(ISP),也可用传统方法进行编程及通用8位微处理器于单片机芯片中,低价位AT89S51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制的领域【8】。

AT89S51提供以下的功能标准:

4K字节闪烁存储器,128字节随机存取数据存储器,2个16位定时计数器,32个IO口,1个串行通信口,1个5向量两级中断结构,另外,AT89S51还可以进行0HZ的静态逻辑操作,并支持两种软件的节电模式,闲散方式停止中央处理器的工作,可允许随机存取数据存储器、定时计数器、串行通信口及中断系统继续工作。

掉电方式保存随机存取数据存储器中的内容,但震荡器停止工作并禁止其它所有部件的工作直到下一个复位,在AT89C51上新增加的功能使AT89S51性能有了较大提升,它的价格甚至更低,它的工作频率可达33MHz,比AT89C51的工作频率更高,ISP在线编程功能的优越性在于它不必要将芯片从工作状态下分离,特别是在改写存储器内的程序,这是一个相当方便简单的功能,它不需要像AT89C51那样外接看门狗计时器单元电路,由于它内部具有双工UART串行通道内部集成看门狗计时器,它具有全新的加密算法,大大加强的程序的保密性,有效的保护知识产权不被侵犯,它完全兼容51全部字系列产品[8]。

图2-5-1AT89S51引脚图

2.4.2引脚说明:

VCC:

电源电压输入端。

GND:

电源地

P0口:

P0口为一个8位漏级开路双向IO口,每脚可吸收8TTL门电流。

当P1口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据地址的低八位。

在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P0口在访问外部存储器时,P0口既是一个真正的双向数据总线口,又是输出8位地址口。

它包括一个输出锁存器,两个三态缓冲器,一个输出驱动电路和一个输出控制电路

P1口:

P1口是一个内部提供上拉电阻的8位双向IO口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入”1”后,被内部上拉为高电平,可用作输入。

P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH编程和校验时,P1口作为第八位地址接收。

专门为用户使用的IO口,是准双向口,P1口为8位准双向口,每一位均可单独定义为输入或输出口。

在编程校验期间,用做输入低位字节地址。

P1口可以驱动4个TTL负载。

P2口:

P2口为一个内部上拉电阻的8位双向IO口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的缘故。

P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:

P3口管脚是8个带内部上拉电阻的双向IO口,可接收输出4个TTL门电流。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入,由于外部下拉为低电平,P3口将输出电流,这是由于上拉的缘故。

P2口也是双向口。

它是供系统扩展时输出高8位地址。

如果没有系统扩展时,也可以作为用户的IO口使用。

P2口作为外部数据存储器或程序存储器的地址总线的高8位输出口AB8-AB15,P0口由ALE选通作为地址总线的低8位输出口AB0-AB7。

外部的程序存储器由PSEN信号选通,数据存储器则由WR和RD读写信号选通,因为2=64k,所以AT89S51最大可外接64kB的程序存储器和数据存储器。

P3口除了作为普通IO口,还有第二功能:

表2-5-2P3口的第二功能

端口引脚

功能特性

P3.0

串行输入口(RXD)

P3.1

串行输出口(TXD)

P3.2

外中断0(INTO)

P3.3

外中断1(INT1)

P3.4

定时计数器0的外部输入口(T0)

P3.5

定时计数器1的外部输入口(T1)

P3.6

外部数据存储器写选通(WR)

P3.7

外部数据存储器读选通(RD)

RST:

复位输入端,高电平有效。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALEPROG:

地址锁存允许编程脉冲信号端。

当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。

在FLASH编程期间,此引脚用于输入编程脉冲。

在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的16。

因此它可用作对外部输出的脉冲或用于定时目的。

然而要注意的是:

每当用作外部数据存储器时,将跳过一个ALE脉冲。

如想禁止ALE的输出可在SFR8EH地址上置0。

此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。

另外,该引脚被略微拉高。

如果微处理器在外部执行状态ALE禁止,置位无效。

PSEN:

外部程序存储器的选通信号,低电平有效。

在由外部程序存储器取指期间,每个机器周期两次PSEN有效。

但在访问外部数据存储器时,这两次有效的PSEN信号将不出现。

EAVPP:

外部程序存储器访问允许。

注意加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,此间内部程序存储器。

在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:

片内振荡器反相放大器和时钟发生器的输入端。

XTAL2:

片内振荡器反相放大器的输出端。

现在已经对四个8位双向并行IO口有了初步的了解。

根据以上的内容可知只有P1口是标准的IO口,所以我们选用P1口作为数据端口,P1口可逐位分别定义各口线为输入或输出线[7]。

2.4.3单片机最小系统

所谓单片机的最小系统是指使单片机能运行程序、正常工作的最简单电路系统,是保证单片正常启动、开始工作的必须电路,缺一不可。

单片机最小系统一般由单片机、程序存储器、时钟电路和复位电路组成。

对于AT89S51单片机,由于片内有4K的程序存储器,所以其最小系统除了单片机本身外,只需外接时钟电路与复位电路即可。

2.4.4主要性能特点和优越性

(1)4kBytesFlash片内程序存储器;

(2)128bytes的随机存取数据存储器(RAM);

(3)32个外部双向输入输出(IO)口;

(4)5个中断优先级、2层中断嵌套中断;

(5)6个中断源;

(6)2个16位可编程定时器计数器;

(7)2个全双工串行通信口;

(8)看门狗(WDT)电路;

(9)片内振荡器和时钟电路;

(10)与MCS-51兼容;

(11)全静态工作:

0Hz-33MHz;

(12)三级程序存储器保密锁定;

(13)可编程串行通道;

(14)低功耗的闲置和掉电模式。

2.5中断系统

2.5.1中断

程序执行过程中,允许外部或内部事件通过硬件打断程序的执行,使其转向为处理内部事件的中断服务程序中去;完成中断服务的程序后,CPU继续原来被打断的程序,这样的过程称为中断过程。

2.5.2产生中断

能产生中断的外部和内部事件。

AT89S51有5个中断源:

(1)INT0:

外部中断0请求,低电平有效。

通过P3.2引脚输入。

(2)INT1:

外部中断1请求,低电平有效。

通过P3.3引脚输入。

(3)T0:

定时器计数器0溢出中断请求。

(4)TI:

定时器计数器1溢出中断请求。

(5)TXDRXD:

串行口中断请求。

当串行口完成一帧数据的发送或接收时,便请求中断。

每一个中断源都对应一个中断请求标志位,它们设置在特殊功能寄存器TCON和SCON中。

当这些中断源请求中断时,相应的标志分别有TCON和SCON中的相应位来锁存。

2.5.3中断系统有以下4个特殊功能寄存器

(1)定时器控制寄存器TCON(用6位);

(2)串行口控制寄存器SCON(用2位);

(3)中断允许寄存器IE;

(4)中断优先级寄存器IP。

其中,TCON和SCON只有一部分用于中断控制。

通过对以上各特殊功能寄存器的各位进行置位或复位等操作,可实现各种中断控制功能。

2.6复位电路

复位是单片机的初始化操作。

其主要功能是把PC初始化为000H,使单片机从0000H单元开始执行程序。

除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新启动。

除PC之外,复位操作还对其他一些寄存器有影响,它们的复位状态如下图所示.

表2-8复位操作对寄存器的影响

寄存器

复位状态

寄存器

复位状态

PC

0000H

TCON

00H

ACC

00H

TL0

00H

PSW

00H

THO

00H

SP

07H

TL1

00H

DPTR

0000H

TH1

00H

P0-P3

FFH

SCON

00H

IP

XX000000B

SBUF

不定

IE

0X000000B

PCON

OXXXOOOOB

TMOD

OOH

为确保微机系统中电路稳定可靠工作,复位电路是必不可少的一部分,一般微机电路正常工作需要供电电源为5V±5%,即4.75~5.25V。

由于微机电路是时序数字电路,它需要稳定的时钟信号,因此在电源上电时,只有当VCC超过4.75V低于5.25V以及晶体振荡器稳定工作时,复位信号才被撤除,微机电路开始正常工作。

单片机的复位分为上电自动复位、按键手动复位两种和看门狗强制复位三种等。

上电复位通常利用电容的充放电来实现,按键复位则可分为按键脉冲复位和按键电平复位两种,看门狗复位则通过外接看门狗电路或软件看门狗程序实现。

常见的有上电复位和按键复位电路。

2.7时钟电路

时钟电路可以简单定义如下:

1.就是产生象时钟一样准确的振荡电路;2.任何工作都按时间顺序。

用于产生这个时间的电路就是时钟电路。

时钟电路一般由晶体震荡器、晶震控制芯片和电容组成。

时钟电路应用十分广泛,如电脑的时钟电路、电子表的时钟电路以及MP3、MP4的时钟电路。

时钟电路用于产生单片机的基本时钟信号,是用来配合外部晶体实现振荡的电路,这样可以为单片机提供运行时钟,如果运行时钟为0的话,单片机就不工作,当然超出单片机的工作频率的时钟也会导致单片机不工作。

时钟电路是微型计算机的心脏,它控制着计算机的工作节奏,CPU就是通过复杂的时序电路完成不同的指令功能的。

MCS-51的时钟信号可以由两种方式:

一种是内部方式,利用芯片内部的振荡电路,产生时钟信号:

另一种为外部方式,时钟信号由外部引入。

如果没有时钟电路来产生时钟驱动单片机,单片机是无法工作的[12]。

AT89S51的时钟信号可由内部振荡器产生,也可由外部电路直接提供。

内部振荡器的输入和输出脚分别为XTAL1和XATL2,由XTAL2给单片机内部电路提供时钟信号。

当时钟信号由外部电路提供时,外部时钟引入XTAL2,而XTAL1脚接地。

2.8显示部分:

LCD

显示部分是LCD1602液晶显示,

图2-8正常工作LCD1602显示

2.8.1LCD1602液晶简介

LCD1602分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别,两者尺寸差别如图2-9所示。

图2-8-1LCD1602规格

字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块

2.8.2LCD1602主要技术参数

表2-8-21602的主要技术参数

工作电压:

4.5—5.5V

容量

16×2个字符

最佳工作电压

5.0V

工作电流

2.0mA

字符尺寸

2.95×4.35(W×H)mm

2.8.3引脚功能说明

1602液晶模块的读写操作,屏幕和光标的操作都是通过指令编程来实现的。

表2-8-3引脚接口说明表

LCD1602采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表编号

符号

引脚说明

1

VDD

正极

2

VSS

3

VL

液晶显示偏压

4

RS

寄存器选择

5

RW

读写选择

6

EN

使能信号

7

D0

数据

8

D1

数据

9

D2

数据

10

D3

数据

11

D4

数据

12

D5

数据

13

D6

数据

14

D7

数据

15

BLA

背光源正极

16

BLK

背光源负极

图2-8-3LCD1602的管脚图

图2-8-31602字符型液晶显示器实物图

2.8.4LCD1602的RAM地址映射及标准字库表

液晶显示模块是一个比较慢的显示器件,因此在执行指令之前要首先确认模块的忙标志处于低电平,表示空闲,不然此指令失效,输入显示字符地址后会显示字符,图是1602的内部显示地址。

图2-8-41602LCD内部显示地址

2.8.5指令说明

LCD1602液晶模块内部的控制器控制指令:

(1)清屏指令

指令功能

指令编码

执行时间ms

清屏

RS

RW

DB7

DB6

DB5

DB4

DB3

DB2

DB1

DB0

1.64

0

0

0

0

0

0

0

0

0

1

功能:

①清除液晶显示器,即将DDRAM的内容全部填入“空白”的ASCII码20H;

②光标归位,即将光标撤回液晶显示屏的左上方;

③将地址计数器(AC)的值设为0.

(2)光标归位指令

指令功能

指令编码

执行时间ms

光标归位

RS

RW

DB7

DB6

DB5

DB4

DB3

DB2

DB1

DB0

1.64

0

0

0

0

0

0

0

0

1

X

功能:

①把光标撤回到显示器的左上方;

②把地址计数器(AC)的值设置为0;

③保持DDRAM的内容不变

(3)进入模式设置指令

指令功能

指令编码

执行时间us

进入模式设置

RS

RW

DB7

DB6

DB5

DB4

DB3

DB2

DB1

DB0

40

0

0

0

0

0

0

0

I

ID

S

功能:

设定每次定入1位数据后光标的以为方向,并且设定每次写入的一个字符是否移动。

参数设定的情况如下所示:

位名设置

ID0=写入新数据后光标左移1=写入新数据后光标右移

S0=写入新数据后显示屏不移动1=写入新数据后显示屏整体右移一个字符

(4)显示开关指令控制

指令功能

指令编码

执行时间us

显示开关控制

RS

RW

DB7

DB6

DB5

DB4

DB3

DB2

DB1

DB0

40

0

0

0

0

0

0

1

D

C

B

功能:

控制显示器开关、光标显示关闭以及光标是否闪烁,参数设定的情况如下:

位名设置

D0=显示功能关1=显示功能开

C0=无光标1=有光标

B0=光标闪烁1=光标不闪烁

(5)设定显示屏或光标移动方向指令

指令功能

指令编码

执行时间us

设定显示屏或光标移动方向

RS

RW

DB7

DB6

DB5

DB4

DB3

DB2

DB1

DB0

40

0

0

0

0

0

1

SC

RL

X

X

功能:

使光标移位或使整个显示屏幕移位。

参数设定的情况如下:

SCRL设定情况

00光标左移1格,且AC值减1

01光标右移1格,且AC值加1

10显示器上字符全部左移1格,但光标不动

11显示器上字符全部右移1格,但光标不动

(6)功能设定指令

指令功能

指令编码

执行时间us

功能设定

RS

RW

DB7

DB6

DB5

DB4

DB3

DB2

DB1

DB0

40

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 职业教育 > 职高对口

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1