Показаны различия между двумя версиями страницы.
| Следующая версия | Предыдущая версия | ||
| products:laboratory_iot:exp40 [2020/05/23 14:23] – создано labuser29 | products:laboratory_iot:exp40 [2024/11/14 17:48] (текущий) – [Программный код эксперимента] labuser29 | ||
|---|---|---|---|
| Строка 7: | Строка 7: | ||
| {{ : | {{ : | ||
| // | // | ||
| + | |||
| + | ==== Программный код эксперимента ==== | ||
| + | <file python Exp40.py[enable_line_numbers=" | ||
| + | import time | ||
| + | import onewire | ||
| + | import ds18x20 | ||
| + | from machine import I2C, Pin | ||
| + | from esp8266_i2c_lcd import I2cLcd | ||
| + | _init() | ||
| + | |||
| + | DEFAULT_I2C_ADDR = 0x3F # Или 0x27 в зависимости от модели микросхемы на плате | ||
| + | |||
| + | i2c = I2C(scl=Pin(5), | ||
| + | lcd = I2cLcd(i2c, DEFAULT_I2C_ADDR, | ||
| + | lcd.backlight_on() | ||
| + | |||
| + | def print_lcd(data): | ||
| + | lcd.clear() | ||
| + | lcd.putstr(' | ||
| + | |||
| + | ow = onewire.OneWire(Pin(12)) | ||
| + | |||
| + | ds = ds18x20.DS18X20(ow) | ||
| + | roms = ds.scan() | ||
| + | |||
| + | while True: | ||
| + | ds.convert_temp() | ||
| + | time.sleep(2) | ||
| + | |||
| + | for rom in roms: | ||
| + | print_lcd(ds.read_temp(rom)) | ||
| + | </ | ||