ESP32S3驱动温湿度模块,显示在SSD1306 OLED显示屏

B站影视 内地电影 2025-09-28 00:45 1

摘要:include#include#include// 引脚定义 #define DHT_PIN 4 #define SCL_PIN 15 #define SDA_PIN 16 // 创建对象 DHT dht(DHT_PIN, DHT11); Adafruit_S

一、需要的硬件

ESP32-S3开发板SSD1306 OLED显示屏(128×64)DHT11或DHT22温湿度传感器面包板和杜邦线

二、接线

SSD1306 OLED:- VCC → 3.3V- GND → GND- SCL → GPIO 15- SDA → GPIO 16DHT11/DHT22:- VCC → 3.3V - GND → GND- DATA → GPIO 4

三、程序

#include#include#include#include// 引脚定义 #define DHT_PIN 4 #define SCL_PIN 15 #define SDA_PIN 16 // 创建对象 DHT dht(DHT_PIN, DHT11); Adafruit_SSD1306 display(128, 64, &Wire, -1); void setup { // 初始化I2C引脚 Wire.begin(SDA_PIN, SCL_PIN); // 初始化OLED display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // 初始化DHT传感器 dht.begin; // 清屏 display.clearDisplay; } void loop { // 读取温湿度 float temp = dht.readTemperature; float hum = dht.readHumidity; // 清屏 display.clearDisplay; // 设置文本属性 display.setTextColor(SSD1306_WHITE); // 显示温度 display.setTextSize(1.5); display.setCursor(0, 0); display.print("Temp:"); display.setCursor(0, 20); display.print(temp, 1); display.print(" C"); // 显示湿度 display.setCursor(0, 40); display.print("Hum:"); display.setCursor(0, 55); display.print(hum, 1); display.print(" %"); // 更新显示 display.display; // 延迟2秒 delay(2000); }

四,效果

来源:小肖科技讲堂

相关推荐