import machine, onewire, ds18x20, time
from machine import Pin,I2C
import ssd1306
import time
import machine
import onewire
ds_pin = machine.Pin(4)
ds_sensor = ds18x20.DS18X20(onewire.OneWire(ds_pin))
dat = machine.Pin(22) # the device is on GPIO0
i2c = I2C(scl=Pin(22), sda=Pin(21), freq=100000) #Init i2c
lcd=SSD1306.SSD1306_I2C(128,64,i2c) #create LCD object,Specify col and row
ds = ds18x20.DS18X20(onewire.OneWire(dat)) # create the onewire object
roms = ds.scan() # scan for devices on the bus
roms = ds_sensor.scan()
print('Found DS devices: ', roms)
while True:
ds_sensor.convert_temp()
time.sleep_ms(750)
for rom in roms:
print(rom)
print(ds_sensor.read_temp(rom))
time.sleep(5)
for rom in roms:
lcd.fill(0)
lcd.text("Temperature:",10,16)
lcd.text(str(ds.read_temp(rom)),24,40)
lcd.show()
except KeyboardInterrupt:
pass