久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 688|回復: 4
收起左側

求助DHT11相關問題

[復制鏈接]
ID:1145127 發表于 2025-5-3 13:40 | 顯示全部樓層 |閱讀模式
最近在用DHT11測量溫濕度的時候遇到了一些問題,查詢相關資料需要在DHT11的數據口加上拉電阻,但是在仿真和實物中加上拉電阻DHT11讀數不正常,不加上拉電阻反而能使用,看仿真好像是數據口不能正常下拉。
相關代碼如下:
//DHT11相關函數
/*******************************************************************************
* 函 數 名   : rev_byte
* 函數功能  : DHT11接受字節
* 輸    入    : 無
* 輸    出    : rev_data
*******************************************************************************/
unsigned char  rev_byte( )        
{            
           unsigned char i,temp,rev_data=0;                  
       for(i=0;i<8;i++)           
            {                 
                    while(dat==0); //等待50us的低電平
                        Delay_10us();  //延時30us
                  Delay_10us();
                        Delay_10us();
                        temp=0;
                          if(dat==1)        //判斷數據為0或1
                    temp=1;
                    while(dat==1); //等待1的高電平結束                    
                  rev_data<<=1;
                     rev_data|=temp;        
             }
                 return rev_data;           
        }

/*******************************************************************************
* 函 數 名       : RH
* 函數功能                   : DHT11讀取
* 輸    入       : *rh、*tem
* 輸    出             : 無
*******************************************************************************/        
void RH(unsigned char *rh,unsigned char *tem)
{
        unsigned char rh_h,rh_l,tem_h,tem_l,rh_ht,rh_lt,tem_ht,tem_lt,check;
        dat=0; //拉低18ms
        dht_Delay(180);                                                           
        dat=1; //總線由上拉電阻拉高延時20us以上         
        Delay_10us();
        Delay_10us();
        Delay_10us();
        Delay_10us();
        dat=1;           //dat引腳設為讀狀態
        if(dat==0)         //判斷是否有低電平響應信號                  
        {
           while(dat==0); //等待 80us 的低電平響應信號         
           while(dat==1);          //等待80us的高電平響應        
           rh_ht=rev_byte();                 //接收濕度高8位        
           rh_lt=rev_byte();                 //濕度低8位
           tem_ht=rev_byte();          //溫度高8位
           tem_lt=rev_byte();         //溫度低8位
           check=rev_byte();
           dat=1;         
           if(rh_ht+rh_lt+tem_ht+tem_lt==check) //數據校驗
           {        
             rh_h=rh_ht;
                 rh_l=rh_lt;
                 tem_h=tem_ht;
                 tem_l=tem_lt;
                 *rh=rh_h;
                 *tem=tem_h;                     
           }
        }

}

不加上拉電阻

不加上拉電阻

加上上拉電阻

加上上拉電阻

數據口不能正常下拉

數據口不能正常下拉
回復

使用道具 舉報

ID:469589 發表于 2025-5-5 09:24 | 顯示全部樓層
說明在仿真中:你的“端口”沒有驅動能力,上拉換成10K以上試試。
回復

使用道具 舉報

ID:1145127 發表于 2025-5-5 14:27 | 顯示全部樓層
GlenXu 發表于 2025-5-5 09:24
說明在仿真中:你的“端口”沒有驅動能力,上拉換成10K以上試試。

試了下12k,可以驅動了,請問這是為什么呢
回復

使用道具 舉報

ID:469589 發表于 2025-5-6 12:59 | 顯示全部樓層
是因為一般驅動能力都沒你想象的大!
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美激情视频网站 | 国产三级黄色 | 日本一区二区不卡视频 | 国产精品3 | 国产黄色片在线观看 | 午夜网址 | 色天天综合网 | 国产精品美女在线 | 欧美黄色网 | 国产成人一区二区三区 | 成人精品一区二区三区 | 国产成人精品亚洲男人的天堂 | 日韩女优在线 | 久久久久久精 | 日韩精品小视频 | 欧美二区视频 | 国产视频一区在线 | 亚洲三级免费 | 91小视频在线观看 | 中文字幕激情 | 国产精品免费一区二区三区 | 亚洲高清视频在线观看 | 免费在线小视频 | 97视频| 亚洲成人免费观看 | 九九精品在线观看 | 日韩久久综合 | 色伊伊 | 91精品国产综合久久久久久 | 成人毛片在线 | 福利视频一区二区 | 免费成年人视频 | 蜜桃精品一区二区 | 日本理伦片午夜理伦片 | 欧美视频久久 | 黄色免费网站视频 | 成人黄色小视频 | 免费看毛片的网站 | 亚洲一区二区免费看 | 在线观看黄色小视频 | 欧美一区二区视频在线观看 |