1602的DHT11温湿度显示程序

1602的DHT11温湿度显示程序

ID:42143901

大小:133.55 KB

页数:9页

时间:2019-09-09

1602的DHT11温湿度显示程序_第1页
1602的DHT11温湿度显示程序_第2页
1602的DHT11温湿度显示程序_第3页
1602的DHT11温湿度显示程序_第4页
1602的DHT11温湿度显示程序_第5页
资源描述:

《1602的DHT11温湿度显示程序》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、单片机:STC89C52RC功能:1602实时显不温湿度硬件连接:P2.7口为通讯口连接DHT11,DHT11的电源和地连接单片机的电源和地****************************************************************#inelude#ineludesbitP2_7=P2A7;〃定义DHT11通信10口typedefunsignedcharU8;号8位整型变量*///typedefsignedcharS8;号8位

2、整型变量*/typedefunsignedintU16;号16位整型变量*///typedefsignedintS16;/*definedforunsigned8-bitsintegervariable/*definedforsigned8-bitsintegervariable/*definedforunsigned16-bitsintegervariable/*definedforsignedbitsintegervariable号16位整型变量*///typedefunsignedlong1)3

3、2;号32位整型变量*///typedefsignedlongS32;号32位整型变量*///typedeffloatF32;浮点数(32位长度)*///typedefdoubleF64;度浮点数(64位长度)*//*definedforunsigned32-bitsintegervariable/*definedforsignedbitsintegervariable/*singleprecisionfloatingpointvariable(32bits)单精度/*doubleprecisionf

4、loatingpointvariable(64bits)双精**********************************************变量左义***********************************************U8U8FLAG,k;U8U8count,U8temp;U8U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L,U8checkdata,RH_shi,RH_gezT_shizT_ge;U8U8T_data_H_t

5、emp/U8T_data_L_temp,U8RH_data_H_temp/U8RH_data_L_temp/U8checkdata_temp;U8U8comdata;voidDelay_l(U16j){U8i;for(;j>0;j-){for(i=0;i<27;i++);}}voidDelay_10us(void){U8i;}voidCOM(void)U8i;for(i=0;i<8;i++)U8FLAG=2;while((!P2_7)&&U8FLAG++);Delay_10us();Delay_10u

6、s();Delay_10us();U8temp=0;if(P2_7)U8temp=l;U8FLAG=2;while((P2_7)&&U8FLAG++);if(U8FLAG==l)break;〃超时则跳出for循环〃判断数据位是0还是1//如果高电平高过预定0高电平值则数据位为1U8comdata«=l;U8comdata

7、=U8temp;//0}//rof***************************************************湿度读取子程序以下变量均为全局变量——温度高8

8、位HU8T_data_H—-温度低8位==U8T_data_L湿度高8位=U8RH_data_H-湿度低8位=U8RH_data_L-校验8位==U8checkdata——调用相关子程序如下Delay();,Delay_10us();,COM();****************************************************voidRH(void){〃主机拉低18msP2_7=0;Delay_l(180);P2_7=l;〃总线由上拉电阻拉高主机延时20usDelay_10us

9、();Delay_10us();Delay_10us();Delay_10us();〃主机设为输入判断从机响应信号P2_7=l;〃判断从机是否有低电平响应信号如不响应则跳出,响应则向下运行if(!P2_7)//T!{U8FLAG=2;〃判断从机是否发出80us的低电平响应信号是否结束while((!P2_7)&&U8FLAG++);U8FLAG=2;〃判断从机是否发出80us的高电平,如发出则进入数据接收状态while((P2_7)&&U8FLAG++)

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。