dht11温湿度传感器oled代码
时间: 2024-10-23 11:18:36 浏览: 25
DHT11是一种常用的温湿度传感器,而OLED是有机发光二极管显示器,常用于小巧的电子设备上显示数据。当将它们结合在一起使用时,通常是为了实现实时的温度和湿度读取并显示在OLED屏上。以下是一个基本的Python示例代码,使用Raspberry Pi和相关的库(如Adafruit_Python_DHT和RPi.GPIO):
```python
import Adafruit_DHT
import time
import board
import adafruit_ssd1306
# 初始化DHT11模块
dht_device = Adafruit_DHT.DHT11(board.D4)
# 初始化OLED屏幕
i2c = board.I2C() # 使用板载I2C
disp = adafruit_ssd1306.SSD1306_I2C(128, 64, i2c)
def show_data():
humidity, temperature = dht_device.read()
if humidity is not None and temperature is not None:
disp.fill(0) # 清空屏幕
disp.text("Temperature: {:.1f}°C".format(temperature), 0, 0)
disp.text("Humidity: {}%".format(humidity), 0, 16)
disp.show()
else:
disp.text("Error", 0, 0)
disp.show()
while True:
show_data()
time.sleep(2) # 每隔两秒更新一次数据
```
这个代码首先初始化了DHT11传感器和OLED显示屏,然后在一个无限循环里读取湿度和温度值,如果获取成功就在屏幕上显示。每两次读取之间会有两秒钟的延迟。
阅读全文