欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: STM32+dht11溫度檢測仿真加源代碼 [打印本頁]

作者: Yorkz    時間: 2020-7-3 10:31
標題: STM32+dht11溫度檢測仿真加源代碼

主函數如下:
#include<stm32f10x.h>
#include"lcd.h"
#include"key.h"
#include"dht11.h"
static int i=1;
void main()
{
  char wen[]={'W','e','n','d','u',':','\0'};
    char shi[]={'s','h','i','d','u',':','\0'};
    lcd_start();
  KEY_Init();
    while(1)
    {
        dht11_start();
        if(key)
        {

           if(i==1)
           {
               lcd_pw(0x01);
           lcd0(wen,0);
               i=0;
           }

         lcd1(dht_gettem(),dht_temget(),6,dat[24]);

        }
        else
        {
           if(i==0)
           {
               i=1;
               lcd_pw(0x01);
               lcd0(shi,0);
           }
            lcd2(dht_getwet(),dht_wetget(),6,dat[8]);
        }
    }
}

DHT11函數如下:
#include<dht11.h>
void stt()
{
      dhtout;
      dhtreset;
     delayms(19);
      dhtset;            //拉高
}
voiddht11_start()
{           
        int i=0;
        dhtout;
        dhtreset;
       delayms(18);   //延時
       dhtin;   //拉高
        while(dhtre);  //等待響應信號
        while(!dhtre);  
       while(dhtre);  
        dhtout;
        dhtset;
        dhtin;
      for(;i<40;i++)       //循環讀取四十位數
       {
         while(!dhtre);
         delayus(28);//延時檢測信號是長信號還是短信號
         if(dhtre==1)
         {
          dat=1;
          while(dhtre);   //等待長信號結束
          continue;  
         }
         if(dhtre==0)
         {
          dat=0;      //立即準備接受下一個信號
         }
       }
      while(!dhtre);
         dhtout;
      dhtset;
         dhtin;
}
intdht_gettem()    //溫度獲取
{
    int dd=0;
    int i;
    for(i=16;i<24;i++)
    {
    dd=dd<<1|dat;
    }
    return dd;
}
intdht_temget()  //濕度獲取
{
     int dc=0;
     inti;
     for(i=24;i<32;i++)
     {
     dc=dc<<1|dat;
     }
     dc=dc&0x7f;
     return dc;
}
intdht_getwet()   
{
    int dd=0;
    int i;
    for(i=0;i<8;i++)
    {
    dd=dd<<1|dat;
    }
    return dd;
}
intdht_wetget()  
{
     int dc=0;
     inti;
     for(i=8;i<16;i++)
     {
     dc=dc<<1|dat;
     }
     dc=dc&0x7f;
     return dc;
}

全部資料51hei下載地址:
代碼仿真.7z (239.53 KB, 下載次數: 113)





歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1