2022-04-28 21:25:32 +02:00
|
|
|
from machine import Pin, I2C
|
|
|
|
from onewire import OneWire
|
|
|
|
from ds18x20 import DS18X20
|
|
|
|
from time import sleep_ms
|
|
|
|
#from machine_i2c_lcd import I2cLcd
|
|
|
|
from lcd_api import LcdApi
|
|
|
|
from i2c_lcd import I2cLcd
|
2022-04-27 21:45:24 +02:00
|
|
|
|
2022-04-28 21:25:32 +02:00
|
|
|
# Relais
|
|
|
|
relais = Pin(15, machine.Pin.OUT, value = 1)
|
|
|
|
led_onboard = Pin(25, machine.Pin.OUT, value = 0)
|
|
|
|
|
|
|
|
# Temperature
|
|
|
|
temp_sensor = DS18X20(OneWire(Pin(16)))
|
|
|
|
sensor_id = temp_sensor.scan()[0]
|
|
|
|
|
|
|
|
# LCD Display
|
|
|
|
#i2c = I2C(0, sda=Pin(0), scl=Pin(1), freq=100000)
|
|
|
|
#lcd = I2cLcd(i2c, 0x27, 2, 16)
|
|
|
|
i2c = I2C(0, sda=Pin(0), scl=Pin(1), freq=400000)
|
|
|
|
lcd_addr = 39
|
|
|
|
i2c.writeto(lcd_addr, '\x7C')
|
|
|
|
i2c.writeto(lcd_addr, '\x2D')
|
|
|
|
|
|
|
|
# Text in Zeilen
|
|
|
|
line_top = 'Temp. (Soll):'
|
|
|
|
line_bot = 'Temp. (Ist) :'
|
2022-04-27 21:45:24 +02:00
|
|
|
|
|
|
|
def ctrl_relais(active = True):
|
|
|
|
if active:
|
|
|
|
relais.value(0)
|
|
|
|
led_onboard.on()
|
|
|
|
else:
|
|
|
|
relais.value(1)
|
|
|
|
led_onboard.off()
|
|
|
|
|
|
|
|
|
|
|
|
while True:
|
2022-04-28 21:25:32 +02:00
|
|
|
temp_sensor.convert_temp()
|
|
|
|
sleep_ms(750)
|
|
|
|
print(temp_sensor.read_temp(sensor_id), " °C")
|
|
|
|
#i2c.writeto(lcd_addr, line_top + "\n" + line_bot)
|
|
|
|
i2c.writeto(lcd_addr, "Hello world")
|
|
|
|
sleep_ms(2000)
|
|
|
|
|
|
|
|
#ctrl_relais(True)
|
|
|
|
#sleep_ms(5000)
|
|
|
|
#ctrl_relais(False)
|
|
|
|
#sleep_ms(5000)
|