int main(void) { DH11_GPIO_Init(); // DHT11初始化 uint8_t Temp_H = 0; uint8_t Temp_L = 0; uint8_t Humi_H = 0; uint8_t Humi_L = 0; while (1) { // 获取数据 DHT11ReadData(Temp_H,Temp_L,Humi_H,Humi_L); // 显示温湿度数据 OLED_ShowNum(1,7,Temp_H,2); // ...
{printf("DHT11 Error \r\n");delay_ms(1000); }//显示“温度:”OLED_ShowChinese(1,1,0);OLED_ShowChinese(1,2,1);OLED_ShowChar(1,5,':');OLED_ShowChar(1,9,'C');//显示“湿度:”OLED_ShowChinese(2,1,2);OLED_ShowChinese(2,2,1);OLED_ShowChar(2,5,':');OLED_ShowChar(2,9,'%'...
DHT11的数据读取只需要一根线,我使用的是PB8,另外,OLED用来显示温湿度的值,使用IIC通信,使用的是PB6和PB7。2程序编写 根据DHT11的数据读取协议,编写对应的数据读取函数。2.1 DHT11复位和检测响应函数 首先是MCU向DHT11发送的起始信号,拉低20ms,再拉高30us。u8DHT11RstAndCheck(void){ u8timer=;__set...
用户MCU发送一次开始信号后,DHT11从低功耗模式转换到高速模式,等待主机开始信号结束后,DHT11发送响应信号,送出40bit的数据,并触发一次信号采集,用户可选择读取部分数据。 从模式下,DHT11接收到开始信号触发一次温湿度采集,如果没有接收到主机发送开始信号,DHT11不会主动进行温湿度采集。采集数据后转换到低速模式。 1.1...
MCU向DHT11发送起始信号后,就可以接收DHT11的数据返回了,一次读取湿度和温度即可。 /*读取一字节数据,返回值-读到的数据*/u8DHT11ReadByte(void){u8i;u8byt=0;__set_PRIMASK(1);//关总中断for(i=0;i<8;i++){while(DHT11_IN);//等待低电平,数据位前都有50us低电平时隙while(!DHT11_IN);//...
1、采用stm32单片机核心板+0.96寸OLED+DHT11温湿度传感器+光敏传感器,制作一个基于stm32单片机DHT11温湿度光敏光照检测OLED显示实物; 2、通过DHT11传感器采集当前的温湿度,并且显示到OLED显示屏上 3、通过光敏传感器采集当前光照强度,并且显示到OLED显示屏上
DHT11的数据读取只需要一根线,我使用的是PB8,另外,OLED用来显示温湿度的值,使用IIC通信,使用的是...
首先,将STM32F103C8T6开发板、DHT11温湿度传感器和OLED12864显示屏分别连接在一起。 将DHT11温湿度传感器的VCC引脚连接到STM32F103C8T6开发板的5V引脚上。 将DHT11温湿度传感器的GND引脚连接到STM32F103C8T6开发板的GND引脚上。 将DHT11温湿度传感器的DATA引脚连接到STM32F103C8T6开发板的PB0引脚上。
1、采用stm32单片机核心板+0.96寸OLED+DHT11温湿度传感器+光敏传感器,制作一个基于stm32单片机DHT11温湿度光敏光照检测OLED显示实物; 2、通过DHT11传感器采集当前的温湿度,并且显示到OLED显示屏上 3、通过光敏传感器采集当前光照强度,并且显示到OLED显示屏上
DHT11的数据读取只需要一根线,我使用的是PB8,另外,OLED用来显示温湿度的值,使用IIC通信,使用的是PB6和PB7。 2 程序编写 根据DHT11的数据读取协议,编写对应的数据读取函数。 2.1 DHT11复位和检测响应函数 首先是MCU向DHT11发送的起始信号,拉低20ms,再拉高30us。 代码语言:javascript 代码运行次数:0 运行 AI...