[Arduino+Oled+DHT11]检测温湿度并显示

Arduino单片机采集DHT11传感器模块的温度和湿度信息,并在OLED显示屏上实时动态显示。
实验材料:


[Arduino+Oled+DHT11]检测温湿度并显示_第1张图片
实验材料.JPG

连线图:


[Arduino+Oled+DHT11]检测温湿度并显示_第2张图片
连线图.jpg

需要添加的库(在项目->加载库中加载这些库):
dht11
Adafruit_GFX
Adafruit_SSD1306
完整代码:

#include  
#include 
#include 
#include 
#include    
float str1,str2; 
dht11 DHT11;  
#define OLED_MOSI  D7
#define OLED_CLK   D5
#define OLED_DC    D0
#define OLED_CS    D8
#define OLED_RESET D3
#define PIN_DHT11   D4
Adafruit_SSD1306 display(OLED_MOSI, OLED_CLK, OLED_DC, OLED_RESET, OLED_CS);  

#define NUMFLAKES 10
#define XPOS 0
#define YPOS 1
#define DELTAY 2
void setup()  
{  
  Serial.begin(9600);  
  Wire.begin();
  display.begin(SSD1306_SWITCHCAPVCC);//初始化
  display.display();
  display.clearDisplay();
}    
void loop()  
{ 
  display.setTextSize(1);
  display.setTextColor(WHITE);
  display.setCursor(0,0);
  DHT11.read(PIN_DHT11);  
  Serial.print("Humidity: ");  
  Serial.println((float)DHT11.humidity, 2);  //串口显示
  str1=DHT11.humidity;
  display.print("Humidity:");
  display.println(str1);
  Serial.print("Temperature: ");  
  Serial.println((float)DHT11.temperature, 2);//串口显示
  str2=DHT11.temperature;
  display.print("Temperature:");
  display.println(str2); 
  display.display();//显示出来
  delay(300);  
  display.clearDisplay();
} 

有兴趣的朋友可以尝试!

你可能感兴趣的:([Arduino+Oled+DHT11]检测温湿度并显示)