找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1608|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

DTH11溫度傳感器模塊

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:757374 發(fā)表于 2020-5-21 14:41 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
DTH11溫度傳感器模塊
#include <reg51.h>
#include <intrins.h>
#include "dht11.h"
//typedef unsigned char  U8;       /* defined for unsigned 8-bits integer variable           ???8?????  */
typedef signed   char  S8;       /* defined for signed 8-bits integer variable                  ???8?????  */
typedef unsigned int   U16;      /* defined for unsigned 16-bits integer variable           ???16????? */
typedef signed   int   S16;      /* defined for signed 16-bits integer variable           ???16????? */
typedef unsigned long  U32;      /* defined for unsigned 32-bits integer variable           ???32????? */
typedef signed   long  S32;      /* defined for signed 32-bits integer variable           ???32????? */
typedef float          F32;      /* single precision floating point variable (32bits) ??????(32???) */
typedef double         F64;      /* double precision floating point variable (64bits) ??????(64???) */
#define uchar unsigned char
#define uint unsigned int
#define   Data_0_time    4
sbit  dht=P3^6;
U8  U8FLAG,k;
U8  U8count,U8temp;
//U8  U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L,U8checkdata;
U8  U8T_data_H_temp,U8T_data_L_temp,U8RH_data_H_temp,U8RH_data_L_temp,U8checkdata_temp;
U8  U8comdata;
U8  outdata[5];  //????????          
U8  indata[5];
U8  count, count_r=0;
U8  str[5]={"RS232"};
U16 U16temp1,U16temp2;
void Delay(U16 j)
{      
        U8 i;
        for(;j>0;j--)
        {        
                for(i=0;i<27;i++);
        }
}
void  Delay_10us(void)
{
        U8 i;
        i--;
        i--;
        i--;
        i--;
        i--;
        i--;
}
void COM(void)
{
        U8 i;
        for(i=0;i<8;i++)          
        {
                U8FLAG=2;       
                while((!dht)&&U8FLAG++);
                Delay_10us();
                Delay_10us();
                Delay_10us();
                U8temp=0;
                if(dht)U8temp=1;
                U8FLAG=2;
                while((dht)&&U8FLAG++);          
                if(U8FLAG==1)break;
                U8comdata<<=1;
                U8comdata|=U8temp;        //0
        }//rof
}
void RH(void)
{
        dht=0;
        Delay(180);
        dht=1;
        Delay_10us();
        Delay_10us();
        Delay_10us();
        Delay_10us();
        dht=1;  
        if(!dht)                 //T !          
        {
                U8FLAG=2;
                while((!dht)&&U8FLAG++);
                U8FLAG=2;
                while((dht)&&U8FLAG++);
                COM();
                U8RH_data_H_temp=U8comdata;
                COM();
                U8RH_data_L_temp=U8comdata;
                COM();
                U8T_data_H_temp=U8comdata;
                COM();
                U8T_data_L_temp=U8comdata;
                COM();
                U8checkdata_temp=U8comdata;
                dht=1;
                U8temp=(U8T_data_H_temp+U8T_data_L_temp+U8RH_data_H_temp+U8RH_data_L_temp);
                if(U8temp==U8checkdata_temp)
                {
                        U8RH_data_H=U8RH_data_H_temp;
                        U8RH_data_L=U8RH_data_L_temp;
                        U8T_data_H=U8T_data_H_temp;
                        U8T_data_L=U8T_data_L_temp;
                        U8checkdata=U8checkdata_temp;
                }//fi
        }//fi
}
//void main()
//{
//        while(1)
//        {
//                RH();
//                str[0]=U8RH_data_H;
//                str[1]=U8RH_data_L;
//                str[2]=U8T_data_H;
//                str[3]=U8T_data_L;
//                str[4]=U8checkdata;
//                Delay(20000);
//        }//elihw
//}// main

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表