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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

STM32 IED DHT11溫濕度傳感器程序問題

[復制鏈接]
跳轉到指定樓層
樓主
ID:938707 發表于 2021-7-31 21:03 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
uint8_t Rh_byte1,Rh_byte2;
uint8_t Temp_byte1,Temp_byte2;
uint16_t sum;
uint8_t check=0;
GPIO_InitTypeDef GPIO_InitStruct;
void set_gpio_output(void)
{
        GPIO_InitStruct.Pin = GPIO_PIN_0;
        GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
        GPIO_InitStruct.Speed=GPIO_SPEED_FREQ_LOW;
        HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
}
void set_gpio_input(void)
{
        GPIO_InitStruct.Pin = GPIO_PIN_0;
        GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
        GPIO_InitStruct.Pull = GPIO_NOPULL;
        HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
}

void DHT11_start(void)
{
        set_gpio_output();
        HAL_GPIO_WritePin(GPIOC, GPIO_PIN_0, 0);
        HAL_Delay(24);
        set_gpio_input();
}

void check_response(void)
{
        delay_us(40);
        if(HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_0) == 0)
        {
                delay_us(80);
                if(HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_0) == 1)
                        check=1;
        }
        while(HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_0)==1);
}

uint8_t read_data(void)
{
        uint8_t i=0,j;
        for(j=0;j<8;j++)
        {
                while(!(HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_0)));
                delay_us(40);
                if((HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_0))==0)
                {
                        i&= ~(1<<(7-j));
                }
                else
                        i|=(1<<(7-j));
                while((HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_0)));
        }
        return i;
}
  while (1)
  {

    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
          DHT11_start();
          check_response();
          Rh_byte1=read_data();
          Rh_byte2=read_data();
          Temp_byte1=read_data();
          Temp_byte2=read_data();
          sum=read_data();
          while(sum==(Rh_byte1+Rh_byte2+Temp_byte1+Temp_byte2))
          {
                  printf("溫度是:%d.%d C ",Temp_byte1,Temp_byte2);
                  HAL_Delay(2);
                  printf("濕度是:%d.%d H\r\n",Rh_byte1,Rh_byte2);
                  HAL_GPIO_TogglePin(D1_GPIO_Port, D1_Pin);
                  HAL_Delay(1000);
          }
}



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

使用道具 舉報

沙發
ID:938707 發表于 2021-7-31 21:05 | 只看該作者
我的問題是單片機復位一次測一次溫濕度,不能連續測,只有最開始的那次測了,后面的但是重復最開始測的那個值
回復

使用道具 舉報

板凳
ID:938707 發表于 2021-7-31 21:15 | 只看該作者
file:///C:/Users/Administrator/Desktop/QQ%E6%88%AA%E5%9B%BE20210731211426.png
這是沒復位的現象
回復

使用道具 舉報

地板
ID:938707 發表于 2021-7-31 21:18 | 只看該作者
file:///C:/Users/Administrator/Desktop/QQ%E6%88%AA%E5%9B%BE20210731211705.png
這是按了復位的現象
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 网站黄色在线免费观看 | 国内自拍第一页 | 国产精品资源在线 | 欧美久久天堂 | 三级av网址 | 免费视频一区二区 | 美女一区 | 成人一区二 | 精品美女视频在线观看免费软件 | 中文字幕色站 | 天天躁人人躁人人躁狂躁 | 日本三级网| 国产午夜精品一区二区三区四区 | 亚洲一区欧美 | 日本涩涩视频 | 九九精品在线 | 欧美亚洲视频 | 精品1区 | 岛国av一区二区 | 久久精品国产一区二区三区不卡 | 国产欧美一区二区三区久久人妖 | 亚洲一区二区三区四区五区午夜 | 免费观看av网站 | 成人在线一区二区三区 | 中文字幕一区二区三区日韩精品 | av在线免费播放 | 91日日 | 国产特级毛片 | 亚州精品天堂中文字幕 | 国产精品一区二区三区在线播放 | 国产一区二区在线免费观看 | 日本一区精品 | 国产伦精品一区二区三区视频金莲 | 成年人在线视频 | av毛片| a级黄色网 | 午夜精品一区二区三区在线观看 | 青青草亚洲 | 亚洲高清视频在线 | 午夜在线免费观看 | 午夜精品网站 |