温湿度传感器系统的原理和设计优秀毕业论文Word下载.docx

上传人:b****6 文档编号:21762623 上传时间:2023-02-01 格式:DOCX 页数:18 大小:418.15KB
下载 相关 举报
温湿度传感器系统的原理和设计优秀毕业论文Word下载.docx_第1页
第1页 / 共18页
温湿度传感器系统的原理和设计优秀毕业论文Word下载.docx_第2页
第2页 / 共18页
温湿度传感器系统的原理和设计优秀毕业论文Word下载.docx_第3页
第3页 / 共18页
温湿度传感器系统的原理和设计优秀毕业论文Word下载.docx_第4页
第4页 / 共18页
温湿度传感器系统的原理和设计优秀毕业论文Word下载.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

温湿度传感器系统的原理和设计优秀毕业论文Word下载.docx

《温湿度传感器系统的原理和设计优秀毕业论文Word下载.docx》由会员分享,可在线阅读,更多相关《温湿度传感器系统的原理和设计优秀毕业论文Word下载.docx(18页珍藏版)》请在冰豆网上搜索。

温湿度传感器系统的原理和设计优秀毕业论文Word下载.docx

代信息技术。

三者分工合作:

传感器相当于人的感官器官,将所有

搜集到的周围规定的被测量目标的变化;

通信技术则相当于人的神

经负责将传感器搜集到的数据信息传递给大脑——计算机:

计算机则负责一切数据的处理并作出判断。

所以利用传感器可以准确的测量我们所需要的信息。

作为和

我们最为密切的一对参数温度和湿度的测量是不可或缺的。

1.2温湿度测量系统的组成

温湿度测量系统由控制部分、测量部分和显示部分组成。

控制部

分采用单片机STC89C52;

测量部分采用集A/D转换功能、温度测量、

湿度测量集于一体的DHT11传感器;

显示部分采用液晶屏1602。

1.3单片机发展

1.4传感器的发展和介绍

第二章系统的组成

在第一章中我们已经介绍该系统由控制部分、测量部分和显示部分组成。

现在我们来分系统介绍。

2.1

单片机89C52

此系统采用常用的STC89C52单片机

STC89C52是一个低电压,高性能CMOS8位单片机,片内

含8kbytes的可反复擦写的Flash只读程序存储器和256

bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的

高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,

片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C52单片机可提供许多较复杂系统控制应用场合。

  STC89C52有40个引脚,32个外部双向输入/输出

(I/O)端口,同时内含2个外中断口,3个16位可编程定时

计数器,2个全双工串行通信口,2个读写口线,AT89C52可以

按照常规方法进行编程,但不可以在线编程(S系列的才支持在

线编程)。

其将通用的微处理器和Flash存储器结合在一起,

特别是可反复擦写的Flash存储器可有效地降低开发成本。

STC89C52是51系列单片机的一个型号,它是ATMEL公司

生产的。

可以直接替换,只是内部多了一个EEPROM空间,可以串口下载程序,指令执行速度快一倍。

 

51系列单片机介绍主要功能特性

◆兼容MCS51指令系统

8k可反复擦写(>

1000次)FlashROM

◆32个双向I/O口?

256x8bit内部RAM

◆3个16位可编程定时/计数器中断?

时钟频率0-24MHz◆2个串行中断

可编程UART串行通道

◆2个外部中断源

◆共8个中断源

◆2个读写中断口线

◆3级加密位

◆低功耗空闲和掉电模式

◆软件设置睡眠和唤醒功能

8051单片机的引脚功能

MCS-51系列单片机一般采用40个引脚,双列直插式封装,

用HMOS工艺制造,其外部引脚排列如图所示。

其中,各引脚的功能为:

(a)DIP引脚图(b)逻辑符号

8051单片机的引脚介绍

⑴主电源引脚:

Vcc(40脚):

接+5V电源正端

Vss(20脚):

接+5V电源地端

一般Vcc和Vss间应接高频去耦电容和低频滤波电容。

⑵外接晶体或外部振荡器引脚

XTAL1(19脚):

接外部晶振的一个引脚。

在单片机内部,它

是一个反相放大器的输入端,这个放大器构成了片内振荡器OSC。

当采用外部振荡器时,此引脚应接地。

XTAL2(18脚):

接外部晶振的另一个引脚。

在片内接至反相

放大器的输出端和内部时钟电路的输入端。

当采用外部振荡器时,此脚接外部振荡器的输出端。

⑶控制信号线

RST/VPD(9脚):

复位信号输入端,复位/掉电时内部RAM的备用电源输入端

ALE/(30脚):

地址锁存允许/编程脉冲输入。

用ALE锁存

从P0口输出的低8位地址;

在对片内EPROM编程时,编程脉冲由此输入。

(29脚):

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

/VPP(31脚):

访问外部存储器允许/编程电压输入。

EA为

高电平时,访问内部存储器;

低电平时,访问外部存储器。

第二功能

片内EPROM编程时,此脚接21V编程电压。

⑷多功能I/O口引脚

8051单片机设有4个双向I/O口(P0、P1、P2、P3),每一组I/O口线都可以独立地用作输入或输出口,其中:

1.P0口为(32~39脚)——双向口(三态),可作为输入

/输出口,可驱动8个LSTTL门电路。

实际应用中常作为分时

使用的地址/数据总线口,对外部程序或数据存储器寻址时低

8位地址与数据总线分时使用P0口:

先送低8位地址信号到

P0口,由地址锁存信号ALE的下降沿将地址信号锁存到地址

锁存器后,再作为数据总线的口线对数据进行输入或输出。

2.P1口(1~8脚)——准双向口(三态),可驱动4个

LSTTL门电路。

用作输入线时,口锁存器必须由单片机先写入“1”,每一位都可编程为输入或输出线。

3.P2口(21~28)——准双向口(三态),可驱动4个

可作为输入/输出口,实际应用中一般作为地

址总线的高8位,与P0口一起组成16位地址总线,用于对外部存储器的接口电路进行寻址。

4.P3口(10~17脚)——准双向口(三态),可驱动4个

双功能口,作为第一功能使用时,与P1口一

样;

作为第二功能使用时,每一位都有特定用途,其特殊用途如表所示:

端口引脚

P3.0

RXD

串行口数据接收端

P3.1

TXD

串行口数据发送端

P3.2

/INT0

外中断请求0

P3.3

/INT1

外中断请求1

P3.4

T0

定时/计数器0外部计数信号输入

P3.5

T1

定时/计数器1外部计数信号输入

P3.6

/WR

外部RAM写选通信号输出

P3.7

/RD

外部RAM读选通信号输出

2.2DHT11介绍

DHT11特点

◆相对湿度和温度测量

◆全部校准,数字输出

◆卓越的长期稳定性

◆无需额外部件

◆超长的信号传输距离◆超低能耗

◆4引脚安装

◆完全互换

DHT11产品概述

DHT11数字温湿度传感器是一款含有已校准数字信号输出的

温湿度复合传感器。

它应用专用的数字模块采集技术和温湿度传感

技术,确保产品具有极高的可靠性与卓越的长期稳定性。

传感器包

括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位

单片机相连接。

因此该产品具有品质卓越、超快响应、抗干扰能力

强、性价比极高等优点。

每个DHT11传感器都在极为精确的湿度校

验室中进行校准。

校准系数以程序的形式储存在OTP内存中,传感

器内部在检测信号的处理过程中要调用这些校准系数。

单线制串行

接口,使系统集成变得简易快捷。

超小的体积、极低的功耗,信号

传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场

合的最佳选则。

产品为4针单排引脚封装。

其中电源引脚的供

电电压为3.5--5.5V。

传感器上电后,要等待1s以越过不稳定状

态在此期间不要发送任何指令。

电源引脚(VDD,GND)之间可增加一个100nF的电容,用以去耦滤波。

DHT11典型应用电路如图所示,其连接电路简单,只需要占用控制

器一个I/O口即可完成上下位的连接。

建议连接线长度短于20时用5K上拉电阻,大于20米时根据实际情况使用合适的上拉电阻,

图DHT11典型应用电路

DHT11

2.3液晶1602介绍

1602液晶简介

1602LCD分为带背光和不带背光两种,基控制器大部分为

HD44780,带背光

比不

带背光的厚,是否带背光在应用

中并无差别,此设计采用的是带背光16脚,两者尺寸差别如下图所示:

1602LCD主要技术参数:

显示容量:

16×

2个字符

芯片工作电压:

4.5—5.5V

工作电流:

2.0mA(5.0V)

模块最佳工作电压:

5.0V

字符尺寸:

2.95×

4.35(W×

H)mm

2.4接口电路

本设计采用USB接口供电,电源电压5V。

同时,USB接口通过内

含PL2303芯片的转换电路对单片机进行程序编写。

其电路原理如图所示:

第三章硬件电路设计3.1单片机电路

通过K2、K3、K4、K5为4个调节按键分别用来调节温度和湿度

的上限和下线。

其中K2为温度上限增加,K3为温度上限减小,K4为湿度上限增加,K5为湿度上限减小。

3.2传感器接线

DHT11的连线

DHT11数字湿温度传感器采用单总线数据格式,即单个数据引脚端

口完成输入输出双向传输。

其数据包由5Byte(40Bit)组成。

一次通

讯时间最大3ms,数据分小数部分和整数部分。

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

数据格式如表:

表DHT11数据格式

配用EEPROM芯

片AT24C04,使存储的温度上下限和湿度上下限可以掉电永久保

存。

温湿度阈值存储在EEPROM芯片AT24C04中,并可以通过K2—K5按键调节并保存。

3.3显示部分

1602接线图

引脚功能

1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表所示:

编号

符号

引脚说明

1

VSS

电源地

9

D2

数据

2

VDD

电源正极

10

D3

3

VL

液晶显示偏压

11

D4

4

RS

数据/命令选择

12

D5

5

R/W

读/写选择

13

D6

6

E

使能信号

14

D7

7

D0

15

BLA

背光源正极

8

D1

16

BLK

背光源负极

第四章程序设计

4.1main.c主程序编写

#include<

reg52.h>

#include"

1602.h"

dht.h"

2402.h"

(2)管脚定义

sbitLed_qushi=P1^6;

//去湿灯

sbitLed_jiangwen=P1^5;

//降温灯

sbitLed_shengwen=P1^4;

//升温灯

sbitKey_TH1=P3^2;

sbitKey_TH2=P3^3;

sbitKey_HH1=P3^4;

sbitKey_HH2=P3^5;

(3)常量、变量定义

//定义标识

volatilebitFlagStartRH=0;

//开始温湿度转换标志

U8FLAG,k;

U8count,U8temp;

extern

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;

U8comdata;

volatilebitFlagKeyPress=0;

//有键按下

//定义温湿度传感器用外部变量

externU8

externU8count,count_r;

U16temp;

S16temperature,humidity;

S16idataTH,HH;

//温度上限和湿度上限char*pSave;

U8keyvalue,keyTH1,keyTH2,keyHH1,keyHH2;

U16RHCounter;

(4)各子程序

{

}

//数据初始化

voidData_Init()

RHCounter=0;

Led_qushi=1;

Led_jiangwen=1;

Led_shengwen=1;

TH=40;

HH=85;

keyvalue=0;

keyTH1=1;

keyTH2=1;

keyHH1=1;

keyHH2=1;

//定时器0初始化

voidTimer0_Init()

ET0=1;

//允许定时器0中断

TMOD=1;

//定时器工作方式选择TL0=0x06;

TH0=0xf8;

//定时器赋予初值TR0=1;

//启动定时器

//定时器0中断

voidTimer0_ISR(void)interrupt1using0

TL0=0x06;

//定时器赋予初值

//每2秒钟启动一次温湿度转换

RHCounter++;

if(RHCounter>

=1000)

FlagStartRH=1;

//存入设定值、

voidSave_Setting()

DELAY(500);

pSave=(char*)&

TH;

//地址低位对应低8位,高位对应高8位

wrteeprom(0,*pSave);

//存温度上限值TH低8位

pSave++;

wrteeprom(1,*pSave);

//存温度上限值TH高8位

HH;

wrteeprom(2,*pSave);

//存湿度上限值RH低8位

wrteeprom(3,*pSave);

//存湿度上限值RH高8位

//载入设定值、

voidLoad_Setting()

*pSave++=rdeeprom(0);

*pSave=rdeeprom

(1);

break;

*pSave++=rdeeprom

(2);

*pSave=rdeeprom(3);

if((TH>

99)||(TH<

0))TH=40;

if((HH>

99)||(HH<

0))HH=85;

voidKeyProcess(uintnum)

switch(num)

case1:

if(TH<

99)TH++;

L1602_char(1,15,TH/10+48);

L1602_char(1,16,TH%10+48);

case2:

if(TH>

1)TH--;

case3:

if(HH<

99)HH++;

default:

Save_Setting();

Timer0_Init();

Data_Init();

L1602_char(2,15,HH/10+48);

L1602_char(2,16,HH%10+48);

case4:

if(HH>

1)HH--;

(5)main()函数

voidmain()

U16i,j,testnum;

EA=0;

{;

L1602_init();

"

);

L1602_string(1,1,"

L1602_string(2,1,"

Tem:

C

TH:

Hum:

%

HH:

Load_Setting();

EA=1;

WelcometoT&

H

ControlSystem!

//延时

for(i=0;

i<

1000;

i++)

for(j=0;

j<

j++)

//清屏

//载入温度上限和湿度上限设定值

L1602_int(1,5,temperature);

L1602_int(2,5,humidity);

while

(1)

//温湿度转换标志检查

if(FlagStartRH==1)

TR0=0;

testnum=RH();

FlagStartRH=0;

TR0=1;

//读出温湿度,只取整数部分

humidity=U8RH_data_H;

temperature=U8T_data_H;

//显示温湿度

//温湿度控制

if(temperature>

TH)Led_jiangwen=0;

elseLed_jiangwen=1;

//降温if(humidity>

HH)Led_qushi=0;

elseLed_qushi=1;

//去湿

if

((Key_TH1)&

&

(keyTH1==0))

{FlagKeyPress

=

1;

KeyProcess(keyvalue);

//键盘查询,在弹起时响应

keyvalue=1;

elseif((Key_TH2)&

(keyTH2==0)){FlagKeyPress=1;

keyvalue=2;

elseif((Key_HH1)&

(keyHH1==0)){FlagKeyPress=1;

keyvalue=3;

elseif((Key_HH2)&

(keyHH2==0)){FlagKeyPress=1;

keyvalue=4;

if(FlagKeyPress==1)

FlagKeyPress=0;

if(!

Key_TH1)keyTH1=0;

elsekeyTH1=1;

Key_TH2)keyTH2=0;

elsekeyTH2=1;

Key_HH1)keyHH1=0;

elsekeyHH1=1;

Key_HH2)keyHH2=0;

elsekeyHH2=1;

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

当前位置:首页 > PPT模板 > 中国风

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

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