DHT11数字温湿度传感器实验STM32F407开发板KEIL软件工程源码: main(void) { u8 t=0; u8 temperature; u8 humidity; HAL_Init(); //初始化HAL库 Stm32_Clock_Init(336,8,2,7); //设置时钟,168Mhz delay_init(168); //初始化延时函数 uart_init(115200); //初始化USART usmart_dev.init(84); //初始化USMART LED_Init(); //初始化LED KEY_Init(); //初始化KEY LCD_Init(); //初始化LCD POINT_COLOR=RED; LCD_ShowString(30,50,200,16,16,"Explorer STM32F4"); LCD_ShowString(30,70,200,16,16,"DHT11 TEST"); LCD_ShowString(30,90,200,16,16,"ATOM@ALIENTEK"); LCD_ShowString(30,110,200,16,16,"2017/4/15"); while(DHT11_Init()) //DHT11初始化 { LCD_ShowString(30,130,200,16,16,"DHT11 Error"); delay_ms(200); LCD_Fill(30,130,239,130+16,WHITE); delay_ms(200); } LCD_ShowString(30,130,200,16,16,"DHT11 OK"); POINT_COLOR=BLUE;//设置字体为蓝色 LCD_ShowString(30,150,200,16,16,"Temp: C"); LCD_ShowString(30,170,200,16,16,"Humi: %"); while(1) { if(t%10==0)//每100ms读取一次 { DHT11_Read_Data(&temperature,&humidity); //读取温湿度值 LCD_ShowNum(30+40,150,temperature,2,16); //显示温度 LCD_ShowNum(30+40,170,humidity,2,16); //显示湿度 } delay_ms(10); t++; if(t==20) { t=0; LED0=!LED0; } } }