找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

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

stm32使用dht11傳感器C語言程序while內(nèi)只能執(zhí)行一次讀取?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
弄了野火的c8t6核心板,使用了他們的dht11程序,同樣的程序在我自己的工程里加上了希望實(shí)現(xiàn)串口顯示溫濕度的功能,但現(xiàn)在只能執(zhí)行一次讀取溫濕度如圖:
去掉delay的時(shí)候:

該怎么找到原因在哪里呢,改一天了,沒有頭緒。
附上代碼:
  1. int main(void)
  2. {
  3.         DHT11_Data_TypeDef DHT11_Data;
  4.         
  5.         
  6.         /* 初始化系統(tǒng)定時(shí)器 */
  7.         SysTick_Init();

  8.         USART_Config();//初始化串口1
  9.         printf("\r\n***dht11 溫濕度傳感器***\r\n");

  10.         /*初始化DTT11的引腳*/
  11.         DHT11_Init ();
  12.         
  13.         while(1)
  14.         {        
  15.                         /*調(diào)用DHT11_Read_TempAndHumidity讀取溫濕度,若成功則輸出該信息*/
  16.                         if( DHT11_Read_TempAndHumidity ( & DHT11_Data ) == SUCCESS)
  17.                         {
  18.                                 printf("\r\n讀取DHT11成功!\r\n\r\n濕度為%d.%d %RH ,溫度為 %d.%d℃ \r\n",\
  19.                                 DHT11_Data.humi_int,DHT11_Data.humi_deci,DHT11_Data.temp_int,DHT11_Data.temp_deci);
  20.                         }                        
  21.                         else
  22.                         {
  23.                                 printf("Read DHT11 ERROR!\r\n");
  24.                         }
  25.                         Delay_ms(2000);
  26.                         printf("\r\n測(cè)試測(cè)試");


  27.         }

  28.         
  29. }
復(fù)制代碼
最底下一行輸出測(cè)試的是我在調(diào)試程序的時(shí)候外加的,不論有沒有去掉delay “測(cè)試測(cè)試”都是不會(huì)輸出的

有大佬可以提供一個(gè)思路嗎附上兩個(gè)程序壓縮包,銘感五內(nèi)。

2.png (25.59 KB, 下載次數(shù): 72)

去掉delay時(shí)

去掉delay時(shí)

1.png (4.24 KB, 下載次數(shù): 66)

有delay時(shí)

有delay時(shí)

代碼.7z

833.75 KB, 下載次數(shù): 6

包含我的程序以及參考野火的串口顯示溫度程序

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

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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