基于51单片机的DHT11湿度1602显示c程序.doc
- 文档编号:2590232
- 上传时间:2022-11-02
- 格式:DOC
- 页数:4
- 大小:24KB
基于51单片机的DHT11湿度1602显示c程序.doc
《基于51单片机的DHT11湿度1602显示c程序.doc》由会员分享,可在线阅读,更多相关《基于51单片机的DHT11湿度1602显示c程序.doc(4页珍藏版)》请在冰豆网上搜索。
#include
#defineuintunsignedint
#defineucharunsignedchar
sbitlcden=P2^7;
sbitlcdrw=P2^5;
sbitlcdrs=P2^6;
sbitDHT11_IO=P3^7;
uintx,y,t;
ucharcodetable[]="0123456789";
voidDelay1()//延时10us
{
uchari;
i--;
i--;
i--;
i--;
i--;
i--;
}
voidDelay2(ucharms)
{//延时子程序
uchari;
while(ms--)
{
for(i=0;i<250;i++);
}
}
voidmDelay(uchardelay)
{
uchari;
for(;delay>0;delay--)
{
for(i=123;i>0;i--);
}
}
voiddelay(uintz)
{
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
voidwrite_com(ucharcom)
{
lcdrs=0;
lcdrw=0;
P0=com;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
voidinit()
{
write_com(0x38);
write_com(0x0c);
write_com(0x06);
write_com(0x01);
write_com(0x80);
}
voidwrite_data(uchardat)
{
lcdrs=1;
lcdrw=0;
P0=dat;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
voidstart(void)//开始信号
{
DHT11_IO=1;
Delay1();
DHT11_IO=0;
Delay2(20);//>18ms
DHT11_IO=1;
Delay1();//20-40us
Delay1();
Delay1();
Delay1();
Delay1();
}
ucharreceive_byte(void)//接收一个字节
{
uchari,temp,count,data_byte;
for(i=0;i<8;i++)
{
while(!
DHT11_IO);//等待50us低电平结束
temp=0;
Delay1();Delay1();Delay1();Delay1();
if(DHT11_IO==1)temp=1;
while(DHT11_IO);
data_byte<<=1;
data_byte|=temp;
}
returndata_byte;
}
voidreceive()//接收数据
{
ucharcheck,num_check,HZ,HX,WZ,WX;
start();//开始信号
DHT11_IO=1;
if(!
DHT11_IO)//读取DHT11响应信号
{
while(!
DHT11_IO);//DHT11高电平80us是否结束
while(DHT11_IO);
HZ=receive_byte();
HX=receive_byte();
WZ=receive_byte();
WX=receive_byte();
check=receive_byte();
DHT11_IO=0;//拉低延时50us
DHT11_IO=1;
num_check=HZ+HX+WZ+WX;
if(num_check=check)
{
check=num_check;
}
}
write_com(0x80);
write_data(table[HZ/10]);
write_data(table[HZ%10]);
write_data('.');
write_data(table[HX/10]);
write_data(table[HX%10]);
write_data('R');
write_data('H');
write_data('%');
// write_com(0x80+0x40);
// write_data(table[WZ/10]);
// write_data(table[WZ%10]);
// write_data('.');
// write_data(table[WX/10]);
// write_data(table[WX%10]);
//write_data('T');
}
voidmain()
{
init();
while
(1)
{
receive();
}
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 DHT11 湿度 1602 显示 程序