基于51单片机的AM2301温湿度传感器在LCD1602上显示驱动程序(带实物图).doc

上传人:b****3 文档编号:2590222 上传时间:2022-11-02 格式:DOC 页数:18 大小:3.08MB
下载 相关 举报
基于51单片机的AM2301温湿度传感器在LCD1602上显示驱动程序(带实物图).doc_第1页
第1页 / 共18页
基于51单片机的AM2301温湿度传感器在LCD1602上显示驱动程序(带实物图).doc_第2页
第2页 / 共18页
基于51单片机的AM2301温湿度传感器在LCD1602上显示驱动程序(带实物图).doc_第3页
第3页 / 共18页
基于51单片机的AM2301温湿度传感器在LCD1602上显示驱动程序(带实物图).doc_第4页
第4页 / 共18页
基于51单片机的AM2301温湿度传感器在LCD1602上显示驱动程序(带实物图).doc_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

基于51单片机的AM2301温湿度传感器在LCD1602上显示驱动程序(带实物图).doc

《基于51单片机的AM2301温湿度传感器在LCD1602上显示驱动程序(带实物图).doc》由会员分享,可在线阅读,更多相关《基于51单片机的AM2301温湿度传感器在LCD1602上显示驱动程序(带实物图).doc(18页珍藏版)》请在冰豆网上搜索。

基于51单片机的AM2301温湿度传感器在LCD1602上显示驱动程序(带实物图).doc

AM2301温湿度传感器模块

AM2301数字温湿度传感器是一各包括有数字校准输出的温湿度传感器。

它采用独特的数字采集模块和高新温湿度采集传感技术,可以确保产品可靠性高以及稳定性好。

该款传感器具有响应快、抗干扰力强、性价比高、品质卓越等优点。

以及超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用的最佳选则。

[9]

AM2301引脚图

图3-10AM2301引脚图

AM2301各引脚说明

表3-7AM2301引脚

引脚

颜色

名称

注释

1

红色

VDD

供电3.3-5.5VDC

2

黄色

SDA

串行数据,单总线

3

黑色

GND

接地,电源负极

4

NC

空脚,请悬空(不要接Vcc或Gnd)

AM2301技术参数

表3-8AM2301技术参数

参数

条件

Min

Typ

Max

单位

湿度

分辨率

0.1

%RH

16

Bit

重复性

±1

%RH

精度

25℃

±3

%RH

0-50℃

±5

%RH

互换性

可完全互换

采样周期

1

2

S

响应时间

1/e(63%)25℃,1m/s空气

2

S

迟滞

±0.3

%RH

长期稳定性

典型值

±1

%RH/yr

温度

分辨率

0.1

16

Bit

重复性

±0.5

精度

±1

量程范围

-40

80

响应时间

1/e(63%)

6

20

S

AM2301驱动电路

图3-11AM2301驱动电路图

温湿度传感器模块流程设计

用户主机(MCU)发送一次开始信号后,AM2301自动从休眠模式转换到高速模式。

等待主机开始,信号发送后,AM2301发送响应信号,送出40比特的数据,发送数据结束之后触发一次信号采集,对外部环境进行数据采集,采集结束传感器自动转入休眠模式,直到下一次通信信号的来临。

此时AM2301的SDA数据线由上拉电阻拉高,一直保持高电平,且AM2301的SDA引脚处于输入状态,时刻检测外部信号。

一旦接收到主机发送的信号,再次进入采集状态,对外部数据进行一次采集。

整个过程流程图如下:

图4-10温湿度传感器流程图

1602LCD显示屏测试

根据第三章说明的LCD硬件连线要求,将屏幕的14个接口按要求分别连接至单片机的各端口,确认无误后,个单片机上电,并将编完的程序通过STC-ISP软件烧入到单片机中,连线图如下:

图5-3LCD1602连线图

给单片机上电之后,屏幕显示如下:

图5-4LCD1602显示效果

该LCD显示屏能正常显示预期设置字幕。

AM2301温湿度传感器测试

根据温湿度传感器驱动电路,实物连接图如下:

图5-7AM2301连线图

给单片机上电,则可在LCD屏幕上得到如下数据:

图5-8AM2301采集数据

LCD屏幕第一行显示当前室内湿度情况,第二行显示当前室内温度情况,若用吹风机对其吹风,则温湿度会相应变化。

附录

主要程序源代码:

1.REG52.H

/*--------------------------------------------------------------------------

REG52.H

Headerfileforgeneric80C52and80C32microcontroller.

Copyright(c)1988-2002KeilElektronikGmbHandKeilSoftware,Inc.

Allrightsreserved.

--------------------------------------------------------------------------*/

#ifndef__REG52_H__

#define__REG52_H__

/*BYTERegisters*/

sfrP0=0x80;

sfrP1=0x90;

sfrP2=0xA0;

sfrP3=0xB0;

sfrPSW=0xD0;

sfrACC=0xE0;

sfrB=0xF0;

sfrSP=0x81;

sfrDPL=0x82;

sfrDPH=0x83;

sfrPCON=0x87;

sfrTCON=0x88;

sfrTMOD=0x89;

sfrTL0=0x8A;

sfrTL1=0x8B;

sfrTH0=0x8C;

sfrTH1=0x8D;

sfrIE=0xA8;

sfrIP=0xB8;

sfrSCON=0x98;

sfrSBUF=0x99;

/*8052Extensions*/

sfrT2CON=0xC8;

sfrRCAP2L=0xCA;

sfrRCAP2H=0xCB;

sfrTL2=0xCC;

sfrTH2=0xCD;

/*BITRegisters*/

/*PSW*/

sbitCY=PSW^7;

sbitAC=PSW^6;

sbitF0=PSW^5;

sbitRS1=PSW^4;

sbitRS0=PSW^3;

sbitOV=PSW^2;

sbitP=PSW^0;//8052only

/*TCON*/

sbitTF1=TCON^7;

sbitTR1=TCON^6;

sbitTF0=TCON^5;

sbitTR0=TCON^4;

sbitIE1=TCON^3;

sbitIT1=TCON^2;

sbitIE0=TCON^1;

sbitIT0=TCON^0;

/*IE*/

sbitEA=IE^7;

sbitET2=IE^5;//8052only

sbitES=IE^4;

sbitET1=IE^3;

sbitEX1=IE^2;

sbitET0=IE^1;

sbitEX0=IE^0;

/*IP*/

sbitPT2=IP^5;

sbitPS=IP^4;

sbitPT1=IP^3;

sbitPX1=IP^2;

sbitPT0=IP^1;

sbitPX0=IP^0;

/*P3*/

sbitRD=P3^7;

sbitWR=P3^6;

sbitT1=P3^5;

sbitT0=P3^4;

sbitINT1=P3^3;

sbitINT0=P3^2;

sbitTXD=P3^1;

sbitRXD=P3^0;

/*SCON*/

sbitSM0=SCON^7;

sbitSM1=SCON^6;

sbitSM2=SCON^5;

sbitREN=SCON^4;

sbitTB8=SCON^3;

sbitRB8=SCON^2;

sbitTI=SCON^1;

sbitRI=SCON^0;

/*P1*/

sbitT2EX=P1^1;//8052only

sbitT2=P1^0;//8052only

/*T2CON*/

sbitTF2=T2CON^7;

sbitEXF2=T2CON^6;

sbitRCLK=T2CON^5;

sbitTCLK=T2CON^4;

sbitEXEN2=T2CON^3;

sbitTR2=T2CON^2;

sbitC_T2=T2CON^1;

sbitCP_RL2=T2CON^0;

#endif

2.INTRINS.H

/*--------------------------------------------------------------------------

INTRINS.H

IntrinsicfunctionsforC51.

Copyright(c)1988-2004KeilElektronikGmbHandKeilSoftware,Inc.

Allrightsreserved.

--------------------------------------------------------------------------*/

#ifndef__INTRINS_H__

#define__INTRINS_H__

externvoid_nop_(void);

externbit_testbit_(bit);

externunsignedchar_cror_(unsignedchar,unsignedchar);

externunsignedint_iror_(unsignedint,unsignedchar);

externunsignedlong_lror_(unsignedlong,unsignedchar);

externunsignedchar_crol_(unsignedchar,unsignedchar);

externunsignedint_irol_(unsignedint,unsignedchar);

externunsignedlong_lrol_(unsignedlong,unsignedchar);

externunsignedchar_chkfloat_(float);

externvoid_push_(unsignedchar_sfr);

externvoid_pop_(unsignedchar_sfr);

#endif

3.STDIO.H

/*--------------------------------------------------------------------------

STDIO.H

PrototypesforstandardI/Ofunctions.

Copyright(c)1988-2002KeilElektronikGmbHandKeilSoftware,Inc.

Allrightsreserved.

-----------------------------------------------------------------

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

当前位置:首页 > 经管营销 > 财务管理

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

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