#引入相关模块
from machine import Pin, SoftI2C, Timer
from ssd1306 import SSD1306_I2C
import time, onewire, ds18x20
i2c = SoftI2C(sda=Pin(14), scl=Pin(12))
oled = SSD1306_I2C(128, 64, i2c,addr=0x3c)
ow = onewire.Onewire(16)
ds = ds18x20.DS18X20(ow)
rom = ds.scam()
led_r = Pin(21,Pin.OUT)
led_g = Pin(22,Pin.OUT)
led_b = Pin(23,Pin.OUT)
ds.convert_temp()
def temp_get(tim):
temp = ds.read_temp(rom[0])
oled.fill(0)
oled.text(str('%.2f'%temp),50,40)
oled.show()
if temp > 30:
led_r.value(1)
led_g.value(0)
led_b.value(0)
else:
led_r.value(0)
led_g.value(0)
led_b.value(1)
tim = Timer(1)
tim.init(period = 1000, mode= Timer.PERIODIC, callaback=temp_get)
Loading
ds18b20
ds18b20