课程设计基于单片机的温湿度传感器.docx
- 文档编号:10718276
- 上传时间:2023-02-22
- 格式:DOCX
- 页数:35
- 大小:286.80KB
课程设计基于单片机的温湿度传感器.docx
《课程设计基于单片机的温湿度传感器.docx》由会员分享,可在线阅读,更多相关《课程设计基于单片机的温湿度传感器.docx(35页珍藏版)》请在冰豆网上搜索。
课程设计基于单片机的温湿度传感器
摘要
由于温度与湿度不管是从物理量本身还是在实际人们的生活中都有着密切的关系,所以温湿度一体的传感器就会相应产生。
DHT11与单片机之间能采用简单的单总线进行通信,仅仅需要一个I/O口。
操作简单,使用基亚5110二手屏幕显示DHT11传感器
读出来的温度和湿度值。
关键字:
AT89S52;5110液晶;DHT11传感器;单总线
Abstract
Becauseofthetemperatureandthehumidityfromboththephysicalquantityitselforintheactuallifeofpeoplearecloselyrelated,sothetemperatureandhumiditysensorintegratedwillariseaccordingly.BetweenDHT11andSCMcanadoptthesimplesinglebus,onlyneedaI\/Oport.Simpleoperation,usingthebaseof5110secondhandscreendisplayDHT11sensorReadoutthetemperatureandhumidity.
Keywords:
AT89S52;DHT115110LCD;sensor;singlebus
引言------------------------------------------1
1.1DHT11描述---------------------------------------------------2
1.2管脚排列----------------------------------------------2
1.3应用电路连接说明--------------------------------------2
1.4DHT11数据结构-----------------------------------------3
1.5DHT11的传输时序---------------------------------------3
1.5.1DHT11开始发送数据流程--------------------------3
1.5.2主机复位信号和DHT11响应信号--------------------3
1.5.3数字‘0’信号表示方法-----------------------------3
1.5.4数字‘1’信号表示方法-----------------------------4
2、诺基亚5110液晶简介(PCD8544驱动)--------------------4
2.1引脚---------------------------------------------------4
2.2功能描述:
---------------------------------------------5
2.2.1地址计数器(AC)--------------------------------5
2.2.2初始化-------------------------------------------5
2.2.3复位的作用----------------------------------------6
2.2.4显示控制------------------------------------------6
2.2.5串行接口时序--------------------------------------6
2.2.6指令集------------------------------------------6
3、总结-------------------------------------------------7
4、谢辞-------------------------------------------------8
5、参考文献---------------------------------------------9
6、附录-------------------------------------------------10
5.1实验总框架图---------------------------------------------10
5.2硬件部分-------------------------------------------------10
5.2.1硬件原理图-------------------------------------------10
5.2.2硬件PCB图-------------------------------------------11
5.2.3所需元器件-------------------------------------------11
5.3实验效果-------------------------------------------------11
5.4实验软件程序---------------------------------------------12
引言
可靠性与卓越的长期稳定性。
传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个8位单片机相连接。
该产品具有通信便捷、超快响应、抗干扰能力强等优点。
每个DHT11传感器都在OTP内存中存入了在湿度校验室中获得的校准系数。
校准系数以程序的形式储存,在传感器内部在检测信号的处理过程中要调用这些校准系数。
单总线串行接口,仅需1个I/O口即可实现对温度和湿度的同时测量,使系统集成变得简易快捷,小体积、低功耗,使其成为一种温湿度测量原件的不错选择。
是居家温湿度表不错的传感器件。
1.1DHT11描述
DHT11是广州奥松有限公司生产的一款湿温度一体化的数字传感器。
该传感器包括一个电阻式测湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。
通过单片机等微处理器简单的电路连接就能够实时的采集本地湿度和温度。
DHT11与单片机之间能采用简单的单总线进行通信,仅仅需要一个I/O口。
传感器内部湿度和温度数据40Bit的数据一次性传给单片机,数据采用校验和方式进行校验,有效的保证数据传输的准确性。
DHT11功耗很低,5V电源电压下,工作平均最大电流0.5mA。
性能指标和特性如下:
1、工作电压范围:
3.5V-5.5V
2、工作电流:
平均0.5mA
3、湿度测量范围:
20-90%RH
4、温度测量范围:
0-50℃
5、湿度分辨率:
5%RH8位
6、温度分辨率:
1℃8位
7、采样周期:
1S
8、单总线结构
9、与TTL兼容(5V)
1.2管脚排列:
PIN
名称
注释
1
VDD
供电(3--5V)
2
DATA
串行数据,单总线
3
NC
悬空
4
GND
电源地
1.3应用电路连接说明
DHT11数字湿温度传感器连接方法极为简单。
第一脚接电源正,第四脚接电源地端。
数据端为第二脚。
可直接接主机(单片机)的I/O口。
为提高稳定性,建议在数据端和电源正之间接一只1K的上拉电阻。
第三脚为空脚,此管脚悬空不用。
因为DHT11是数字传感器,所以建议在电源正引脚接上滤波电容以提高稳定性。
1.4DHT11数据结构
DHT11数字湿温度传感器采用单总线数据格式。
即,单个数据引脚端口完成输入输出双向传输。
其数据包由5Byte(40Bit)组成。
数据分小数部分和整数部分,具体格式在下面说明。
一次完整的数据传输为40bit,高位先出。
数据格式:
8bit湿度整数数据+8bit湿度小数数据
+8bit温度整数数据+8bit温度小数数据
+8bit校验和
校验和数据为前四个字节相加。
传感器数据输出的是未编码的二进制数据。
数据(湿度、温度、整数、小数)之间应该分开处理。
如果,某次从传感器中读取如下5Byte数据:
byte4byte3byte2byte1byte0
0010110100000000000111000000000001001001
整数小数整数小数校验和
湿度温度校验和
由以上数据就可得到湿度和温度的值,计算方法:
humi(湿度)=byte4.byte3=45.0(%RH)
temp(温度)=byte2.byte1=28.0(℃)
Jiaoyan=byte4+byte3+byte2+byte1=73(=humi+temp)(校验正确)
注意:
DHT11一次通讯时间最大3ms,主机连续采样间隔建议不小于100ms。
1.5DHT11的传输时序
1.5.1、DHT11开始发送数据流程
主机发送开始信号后,延时等待20us-40us后读取DH11T的回应信号,读取总线为低电平,说明DHT11发送响应信号,DHT11发送响应信号后,再把总线拉高,准备发送数据,每一bit数据都以低电平开始,格式见下面图示。
如果读取响应信号为高电平,则DHT11没有响应,请检查线路是否连接正常。
VCC主机开始DHT响应输出
数据’0’数据‘1’
GND拉高并等待准备输出
1.5.2主机复位信号和DHT11响应信号
VCC主机拉高20--40usDHT拉高40-50us
GND主机至少拉低18msDHT拉高40-50us
传送指令开始
1.5.3数字‘0’信号表示方法
VCC26--28us表示‘0’
下一位开始
GND12-14us
1BIT开始
1.5.4数字‘1’信号表示方法
VCC116--118us表示‘1’
下一位开始
GND
1BIT开始
12-14us
2、诺基亚5110液晶简介(PCD8544驱动)
特征:
单芯片LCD控制/驱动
48行,84列输出
显示数据RAM48*84位
芯片集成:
——LCD电压发生器(也可以使用外部电压供应)
——LCD偏置电压发生器
——振荡器不需要外接元件(也可以使用外部时钟)
外部RES(复位)输入引脚
串行界面最高4.0Mbits/S
CMOS兼容输入
混合速率:
48
逻辑电压范围VDD到VSS:
2.7V~3.3V
显示电压范围VLCD到VSS:
——6.0~8.5VLCD内部电压发生器(充许电压发生器)
——6.0~9.0VLCD外部电压供应(电压发生器关闭)
低功耗,适用于电池供电系统
关于VLCD的温度补偿
使用温度范围:
-25~70℃
2.1引脚
SDIN
串行数据输入端
SCLK
串行时钟输入端
D/C
数据/命令
SCE
芯片使能
RES
外部复位输入端
SDIN:
串行数据线
输入:
数据线。
SCLK:
串行时钟线
输入:
时钟信号:
0.0~4.0Mbits/s.
D/C:
模式选择
输入:
选择命令/地址或输入数据
SCE:
芯片使能
使能引脚充许输入数据,低电平有效。
RES:
复位
此信号会复位设备,应用于初始化芯片。
低电平有效。
2.2功能描述:
2.2.1地址计数器(AC)
地址计数器为写入显示数据存储器指定地址。
X地址X6~X0和Y地址Y2~Y0分别设置。
写入操作之后,地址计数器依照V标志自动加1。
显示数据存储器(DDRAM)。
DDRAM是存储显示数据的48*84位静态RAM。
RAM分为6排,每排84字节(6*8*84位)。
访问RAM期间,数据通过串行接口传输。
这里X地址与列输出号码直接通信。
2.2.2初始化
接电源后,内部寄存器和RAM的内容不确定。
必须应用一个RES
脉冲。
注意,不正确的复位是危险的,可能会损坏设备。
所有内部寄存器在指定的时间内,通过31脚的外部RES脉冲(低
电平)复位。
无论如何,RAM的内容仍然不确定。
2.2.3复位的作用
复位后,LCD驱动器有下列状态:
电源节省模式(位PD=1)
水平寻址(位V=0)常规指令设置(位H=0)
显示页(位E=D=0)
地址计数器X6至X0=0;Y2至Y0=0
温度控制模式(TC1TC0=0)
偏置系统(BS2至BS0=0)
VLCD等于0,HV发生器为关闭状态(VOP6至VOP0=0)
加电后,RAM内容不确定。
2.2.4显示控制
位D和E
位D和E选择显示模式
设置RAM的Y地址
定义显示RAM的Y寻址向量。
Y的范围是0至5
设置RAM的X地址
X地址指向列。
X的范围是0至83(53H)。
位V
当V=0,选择水平寻址。
数据写入DDRAM
当V=1,选择垂直寻址。
数据写进DDRAM
位H
当H=0,可以执行‘显示控制’,‘设置Y地址’和‘设置X地址’;
当H=1,可以执行其它命令。
操作电压VLCD可以用软件设置,值根据液晶来选择。
VLCD=a+(VOP6toVOP0)xb[V].对于PCD8544,a=3.06,b=0.06
在室温下的编程范围为3.00~10.68。
注意如果VOP6toVOP0设为0时,会关闭负荷的吸取。
例如混合比1:
48,适当的液晶操作电压,Vth是液晶的极限使用电压。
警告,在低温下增加VOP时,在25℃情况下,VOP不能超过8.5V极限值。
2.2.5串行接口时序
2.2.6指令集
指令
D/C
命令字
描述
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
(H=0or1)
NOP
0
0
0
0
0
0
0
0
0
空操作
功能设置
0
0
0
1
0
0
PD
V
H
写数据
1
D7
D6
D5
D4
D3
D2
D1
D0
写数据到显示RAM
H=0
保留
0
0
0
0
0
0
0
X
X
不可使用
显示控制
0
0
0
0
0
1
D
0
E
设置显示配置
保留
0
0
0
0
1
X
X
X
X
不可使用
设置RAM的Y地址
0
0
1
0
0
0
Y2
Y1
Y0
Y的范围是0至5
设置RAM的x地址
0
1
X6
X5
X4
X3
X2
X1
X0
X的范围是0至83
H=1
保留
0
0
0
0
0
0
0
0
1
不可使用
保留
0
0
0
0
0
0
0
1
X
不可使用
温度控制
0
0
0
0
0
0
1
TC1
TC0
设置温度系数(TCx)
保留
0
0
0
0
0
1
X
X
X
不可使用
偏置系统
0
0
0
0
1
0
BS2
BS1
BS0
设置偏置系统
保留
0
0
1
X
X
X
X
X
X
不可使用
设置Vop
0
1
Vop6
Vop5
Vop4
Vop3
Vop2
Vop1
Vop0
写VOP到寄存器
PD
芯片是活动的
芯片处于掉电模式
V
水平寻址
垂直寻址
H
使用基本指令集
使用扩展指令集
DandE
00
显示空白
01
普通模式
10
开所有显示段
11
反转映象模式
TC1andTC0
00
VLCD温度系数0
01
VLCD温度系数1
10
VLCD温度系数2
11
VLCD温度系数3
3总结:
通过此次课程设计,使我更加扎实的掌握了有关课本知识,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。
因为在试验中,我画PCB时忘记了连接晶振电容的地引脚,导致做出板后用导线连接,降低了电路板的美观。
忽略了AT89S52的第31引脚接VCC才是访问片内存储器,也导致了我烧坏了一片DHT11传感器。
实践出真知,通过亲自动手制作,使我们掌握的知识不再是纸上谈兵。
谢辞
首先感谢学院给了我实际动手做电路板的机会,让我对自己专业知识有更深一步的认识。
让我感受到我们工科生要不断提高自己的动手能力,日后做电子作品才能更好,更快地完成。
在此感谢彭老师在我写论文时给的批注和改正。
让我对本科论文的编写格式有更深的理解和认识更深刻。
参考文献:
诺基亚5110液晶中文手册
广州奥松有限公司 DHT11温湿度传感器说明书
[1]郭天祥.新概念51单片机C语言教程——入门、提高、开发、拓展全攻略.北京:
电子工业出版社,2009
[2]谭浩强.C程序设计教程.北京:
清华大学出版社,2007.7
附录
5.1实验总框架图:
5.2硬件部分:
由AT89S52最小系统,诺基亚5110液晶和DHT11温湿度传感器组成,电路相当简单。
5.2.1硬件原理图
5.2.2硬件PCB图
5.2.3硬件所需元器件
Comment
Designator
Footprint
Quantity
10UF
C1,C6,C7
RB1
3
104
C2
RAD0.15
1
30p
C3,C4
RAD0.15
2
100nf
C5
RAD0.15
1
led
D1
diode
1
11.0592M
D2
晶振
1
JTAG
J8
JTAG
1
Header3X2A
P1
HDR2X3_CEN
1
Header20
P2,P4
HDR1X20
2
res10k
P3
HDR1X9
1
RES
R1
RES
1
1k
R2,R3
AXIAL0.3
2
10k
R4
AXIAL0.3
1
自锁
S1
1
SW-PB*
S2
sw-pb
1
5110
U1
5110
1
AT89S52
U2
DIP40
1
DHT11
U4
1
5.3实验效果:
上电后,5110液晶显示第二,三行分别显示温度,湿度值。
接着在第一行显示学
号1000220620。
停留1秒钟后,切换显示姓名李能剑,再停留1秒后,就动态显示基于单片机的温湿度传感器。
5.4软件程序流程图:
5.4.1软件流程图:
开始
5110复位
初始化5110
5110清屏
5110显示温度:
℃
湿度:
%RH
进入while
(1)
循环
执行DHT11_ReadTempAndHumi();
读取温湿度当前值
显示温湿度值
Flag=1flag=2
判flag
5.4.2软件程序
#include"reg52.h"
sbitres=P2^7;
sbitsce=P2^6;
sbitdc=P2^5;
sbitsdin=P2^4;
sbitsclk=P2^3;
sbitdht11=P2^0;
#defineOK1
#defineERROR0
#defineNUMBER20
#defineSIZE5
unsignedcharflag=1;
unsignedcharstatus;//存放五字节数据的数组
unsignedcharvalue_array[SIZE];/*可在其他的文件引用温湿度值,实际是温度的整数的10倍;*/
/*如dht11读回的温度是26,则temp_value=260,湿度同理*/
unsignedchark=0;
unsignedintcodehanzi[]={
0x82,0x82,0xFF,0xAA,0xAA,0xAA,0xAA,0xAA,0xFF,0x82,0x82,0x00,0x0A,0x09,0x0A,0x0A,
0x0A,0x0F,0x0A,0x0A,0x0A,0x09,0x0A,0x00,/*"基",0*/
0x20,0x21,0x21,0x21,0x21,0xFF,0x21,0x21,0x21,0x21,0x20,0x00,0x00,0x00,0x00,0x08,
0x08,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,/*"于",1*/
0x00,0x7C,0x55,0x56,0x54,0xFC,0x54,0x56,0x55,0x7C,0x00,0x00,0x01,0x01,0x01,0x01,
0x01,0x0F,0x01,0x01,0x01,0x01,0x01,0x00,/*"单",2*/
0x00,0x00,0xFE,0x90,0x90,0x90,0x90,0x9F,0x90,0x10,0x10,0x00,0x08,0x06,0x01,0x00,
0x00,0x00,0x00,0x00,0x0F,0x00,0x00,0x00,/*"片",3*/
0x88,0x68,0xFF,0x28,0x40,0xFE,0x02,0x02,0xFE,0x00,0x00,0x00,0x00,0x00,0x0F,0x08,
0x04,0x03,0x00,0x00,0x07,0x08,0x0E,0x00,/*"机",4*/
0xFC,0x46,0x45,0x44,0xFC,0x10,0x08,0x27,0xC4,0x04,0xFC,0x00,0x0F,0x04,0x04,0x04,
0x0F,0x00,0x00,0x00,0x08,0x08,0x07,0x00,/*"的",5*/
0x22,0x44,0x00,0xC0,0x5F,0xD5,0x55,0xD5,0x5F,0xC0,0x00,0x00,0x04,0x02,0x09,0x0F,
0x08,0x0F,0x08,0x0F,0x08,0x0F,0x08,0x00,/*"温",6*/
0x11,0x22,0x80,0x3E,0x2A,0xEA,0x2A,0xEA,0x2A,0x3E,0x80,0x00,0x04,0x02,0x08,0x09,
0x08,0x0F,0x08,0x0F,0x08,0x09,0x08,0x00,/*"湿"
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 基于 单片机 温湿度 传感器