Это старая версия документа!
В прошлом эксперименте мы сделали полноценный термометр с доступом по IP адресу. Он подключается к существующей сети Wi-Fi, и пользователь тоже подключается к той же сети для соединения с термометром. В такой схеме подключения задействованы три устройства: сам ночник, Wi-Fi роутер и устройство клиента (смартфон или копьютер).
Но наша плата может работать сама в режиме точки доступа. В таком случае можно установить соединение между платой и клиентским устройством (смартфоном или ноутбуком) напрямую. Для этого нужно настроить микроконтроллер на работу в режиме точки доступа.
Схему прошлого эксперимента оставляем без изменений, но немного изменим код.
import time from machine import I2C, Pin import onewire import ds18x20 from micropyserver import MicroPyServer import network import gc _init() gc.collect() ap_id = "WIFI_TEMP" ap_pass = "12345678" # the device is on GPIO12 ow = onewire.OneWire(Pin(12)) # create the onewire object ds = ds18x20.DS18X20(ow) ap = network.WLAN(network.AP_IF) ap.active(True) ap.config(essid=ap_id, password=ap_pass) time.sleep(2) while ap.isconnected() == False: pass print('Device IP:', ap.ifconfig()[0]) def show_message(request, params): ''' request handler ''' roms = ds.scan() ds.convert_temp() time.sleep_ms(750) for rom in roms: temp = str(ds.read_temp(rom)) server.send(temp) server = MicroPyServer() ''' add request handler ''' server.add_route("/", show_message) ''' start server ''' server.start()