为什么stm32dht11得到数据是0

问题遇到的现象和发生背景

我用的stm32f103c8t6跟温度传感器dht11然后用串口得到的数据

问题相关代码,请勿粘贴截图

main

#include "led.h"
#include "delay.h"
#include "sys.h"
#include "dht11.h"
#include "usart.h"
int main(void)
{
delay_init();
LED_Init();
DHT11_Init();
Usart1_Init(115200);

while(1)
{
    if(DHT11_Read_Data(&humidityH,&humidityL,&temperatureH,&temperatureL))
    {
        UsartPrintf(USART_DEBUG,"Hum:%d.%d  Tem:%d.%d\r\n",humidityH,humidityL,temperatureH,temperatureL);
    }
    else{
        UsartPrintf(USART_DEBUG,"DHT11 read failed\r\n");
    }
    delay_ms(1000);
}

}

运行结果及报错内容

串口输出一直为0

我的解答思路和尝试过的方法
我想要达到的结果

能够正常的输出结果

这里只有显示代码,没有读取的代码

请问解决了吗,我也是这样