DHT11的程序
sbit DHT11 = P1^7;
uchar U8FLAG;
uchar U8count,U8temp;
uchar U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L,U8checkdata; //分别代表高8位温度,低八位温度,高八位湿度,低八位湿度,校验和
uchar U8T_data_H_temp,U8T_data_L_temp,U8RH_data_H_temp,U8RH_data_L_temp,U8checkdata_temp;
uchar shidu_shi,shidu_ge,wendu_shi,wendu_ge;
uchar U8comdata;
void COM(void)
{
uchar i;
for(i=0;i<8;i++)
{
U8FLAG=2;
while((!DHT11)&&U8FLAG++);
Delay_10us();
Delay_10us();
Delay_10us();
U8temp=0;
if(DHT11)
U8temp=1;
U8FLAG=2;
while((DHT11)&&U8FLAG++);
if(U8FLAG==1)break;
U8comdata<<=1;
U8comdata|=U8temp; //0
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>