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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2497|回復: 0
打印 上一主題 下一主題
收起左側

STM32單片機+DHT11溫濕度測量程序

[復制鏈接]
跳轉到指定樓層
樓主
利用stm32f103c6t6和DHT11實現溫濕度測量
制作出來的實物圖如下:


STM32單片機源程序如下:
  1. #include "stm32f10x.h"                  // Device header
  2. #include "Delay.h"
  3. #define MCU_Output 1
  4. #define MCU_Input 0

  5. extern uint8_t DHT11_exist_Plag;// DHT11狀態標志位,0表示DHT11不存在,1表示DHT11存在
  6. extern uint8_t Hum_Tem_Data[];// 存放溫濕度數據數組
  7. /****
  8.         *@brief 引腳初始化,將DHT11與PA10相連
  9.         *@parameter MCU_State:MCU_State=1時,單片機引腳配置為輸出模式。MCU_State=0則配置為輸入模式
  10.         *@ReturnValue  無
  11.         */
  12. void DHT11_DataPin_Init(uint8_t MCU_State)
  13. {
  14.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
  15.         GPIO_InitTypeDef GPIO_InitStructure;
  16.         if(MCU_State)
  17.         {
  18.                 GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
  19.         }else
  20.         {
  21.                 GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IPU;
  22.         }
  23.         GPIO_InitStructure.GPIO_Pin=GPIO_Pin_10;
  24.         GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
  25.         GPIO_Init(GPIOA,&GPIO_InitStructure);
  26. }
  27. /****
  28.         *@brief DHT11起始信號
  29.         *@parameter
  30.         *@ReturnValue
  31.         */
  32. void DHT11_Start(void)
  33. {
  34.         Delay_s(1);
  35.         DHT11_DataPin_Init(MCU_Output);
  36.         GPIO_SetBits(GPIOA,GPIO_Pin_10);
  37.         GPIO_ResetBits(GPIOA,GPIO_Pin_10);
  38.         Delay_ms(20);
  39.         GPIO_SetBits(GPIOA,GPIO_Pin_10);
  40.         Delay_us(30);
  41.         DHT11_DataPin_Init(MCU_Input);
  42.         if(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_10)==0)
  43.         {
  44.                 DHT11_exist_Plag=1;
  45.                 while(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_10)==0);
  46.                 while(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_10)==1);
  47.         }
  48. }
  49. /****
  50.         *@brief DHT11溫濕度測量
  51.         *@parameter 無
  52.         *@ReturnValue 無
  53.         */
  54. void DHT11_GetData(void)
  55. {
  56.         int8_t i,j,Temp=0x00;
  57.         if(DHT11_exist_Plag==1)// 檢測DHT11是否存在,若DHT11不存在,則不必進行下面步驟
  58.         {
  59.                 for(j=0;j<5;j++)
  60.                 {
  61.                         
  62.                         for(i=0;i<8;i++)
  63.                         {
  64.                                 while(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_10)==0);
  65.                                 Delay_us(30);
  66.                                 if(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_10)==1)
  67.                                 {
  68.                                         Temp=Temp|(0x80>>i);// DHT11數據高位先出
  69.                                         while(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_10)==1);
  70.                                 }
  71.                         }
  72.                         Hum_Tem_Data[j]=Temp;
  73.                         Temp=0x00;
  74.                 }
  75.                 if(Hum_Tem_Data[0]+Hum_Tem_Data[1]+Hum_Tem_Data[2]+Hum_Tem_Data[3]!=Hum_Tem_Data[4])// 校驗數據是否正確,若不正確則數組全部寫1
  76.                 {
  77.                         Hum_Tem_Data[0]=0xff;
  78.                         Hum_Tem_Data[1]=0xff;
  79.                         Hum_Tem_Data[2]=0xff;
  80.                         Hum_Tem_Data[3]=0xff;
  81.                         
  82.                 }
  83.         }else
  84.         {
  85.                 DHT11_Start();
  86.         }
  87. }
復制代碼
DHT11_數據手冊.pdf (681.04 KB, 下載次數: 29)
Keil代碼下載: Keil代碼.7z (176.88 KB, 下載次數: 107)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 中文字幕在线一区二区三区 | 羞羞的视频免费看 | 鲁一鲁资源影视 | 911网站大全在线观看 | 免费观看成人av | av网站免费 | 国户精品久久久久久久久久久不卡 | 毛片网在线观看 | av电影一区 | 国产情品 | 免费人成在线观看网站 | 一区二区三区久久久 | 欧美日韩一二三区 | 久久精品国产清自在天天线 | 精品国产一区二区在线 | 日韩伦理电影免费在线观看 | 国产成人精品在线 | 亚洲国产精品视频一区 | 亚洲精品久久久久久一区二区 | 日韩欧美1区2区 | 97avcc| 国产一区二区三区在线免费观看 | 国产一区二区日韩 | 五月天国产视频 | 精品国产乱码久久久久久久久 | 91久久精品国产免费一区 | 97色在线观看免费视频 | 国产精品久久久久无码av | 成人国产精品久久 | 色天天综合 | 天天玩夜夜操 | 毛片在线免费播放 | 日韩欧美在线观看 | 水蜜桃久久夜色精品一区 | 久久久久久艹 | 国产精品亚洲第一 | 91麻豆蜜桃一区二区三区 | 黄色一级电影免费观看 | 亚洲精品二区 | 91视视频在线观看入口直接观看 | 九九精品影院 |