micropython ESP-01+DHT11+OLED 实现简易电子温度计

micropython ESP-01+DHT11+OLED 实现简易电子温度计_第1张图片

0.准备

零件 数量
ESP-01 x1
DHT11 x1
128x64 OLED I2C x1
AMS1117-3.3V电源模块 -
导线 -
万能板 -
其他.. -

2.写入micropython固件

如果你想修改esp-01flash大小可参考文章:esp8266-01 替换4M Flash(搬运)
固件写入教程可以参考文章:ESP8266 ESP-01 制作路由中继(信号放大装置)

2.焊接

micropython ESP-01+DHT11+OLED 实现简易电子温度计_第2张图片
电路
micropython ESP-01+DHT11+OLED 实现简易电子温度计_第3张图片
焊接示例

3.程序:

oled驱动使用的库是https://raw.githubusercontent.com/adafruit/micropython-adafruit-ssd1306/master/ssd1306.py
oled使用相关教程可以参考文章:https://github.com/lvidarte/esp8266/wiki/MicroPython%3A-SDD1306

代码:

from machine import reset
from machine import Pin, I2C
from ssd1306 import SSD1306_I2C

import dht
import time
import sys
import os 

i2c = I2C(scl=Pin(0), sda=Pin( 2))
oled = SSD1306_I2C(128, 64, i2c)
d = dht.DHT11(Pin( 2))  # 声明用到类库中的函数,并设置参数   
while True: 
    d.measure()  # 调用DHT类库中测量数据的函数 
    temp_ = str(d.temperature())#读取measure()函数中的温度数据
    hum_ = str(d.humidity())  # 读取measure()函数中的湿度数据 
    '''print('temp:'+ temp_+"C", 0, 0)
    print('hum:'+ hum_+"%", 0, 8) '''
    oled.fill(0)
    oled.text('temp:'+ temp_+"C", 0, 0)
    oled.text('hum:'+ hum_+"%", 0, 8)
    oled.show()
    time.sleep(1)
micropython ESP-01+DHT11+OLED 实现简易电子温度计_第4张图片
效果示例

大家自由发挥吧!!!

micropython ESP-01+DHT11+OLED 实现简易电子温度计_第5张图片

你可能感兴趣的:(micropython ESP-01+DHT11+OLED 实现简易电子温度计)