Это старая версия документа!
В прошлом эксперименте мы получили список доступных сетей Wi-Fi. После подключения к одной из них мы станем полноценным участником информационного обмена в ней. Мы сможем быть как клиентом, так и сервером. Как мы уже узнали ранее, клиент — это программа, которая запрашивает данные, а сервер — это программа, которая отдает данные. Сервер ожидает когда клиент к нему подключится и запросит данные.
Например, есть веб-сервер на котором находится сайт pinlab.ru, он ждет когда к нему подключится клиент. И есть браузер на компьютере или в смартфоне. Пользователь посредством браузера обращается к серверу, сервер отвечает клиенту отправкой веб- страницы. Так выглядит схема обмена данными между сервером и клиентом.
В прошлом эксперименте мы получали список доступных Wi-Fi сетей. Необходимо убедиться, что среди них есть нужная сеть — домашняя сеть или сеть, поднятая посредством смартфона. Имя этой сети нужно записать. Также нужно удостовериться, что уровень сигнала достаточный для подключения. Если RSSI (мощность сигнала) менее, чем -70, то необходимо переместиться ближе к точки доступа.
Попробуем написать простейший веб- сервер, который будет отвечать на запросы клиентов. Для этого нам потребуется библиотека micropyserver
. Ее нужно закачать в корень файловой системы микроконтроллера.
Скачать ее можно по ссылке ниже. Как обычно, в архиве 2 версии — в виде исходных кодов с расширением .py и в откомпилированном виде с расширением .mpy. Мы рекомендуем загружать в микроконтроллер откомпилированную версию бибилотеки, а для самостоятельного изучения можно читать код в файле с исходным кодом.
from micropyserver import MicroPyServer import time import network import gc _init() gc.collect() wlan_id = "Wi-Fi_Name" wlan_pass = "Wi-Fi_Password" wlan = network.WLAN(network.STA_IF) wlan.active(True) wlan.connect(wlan_id, wlan_pass) time.sleep(1) while wlan.isconnected() == False: pass print('Device IP:', wlan.ifconfig()[0]) def show_message(request, params): ''' request handler ''' server.send("HELLO WORLD!") server = MicroPyServer() ''' add request handler ''' server.add_route("/", show_message) ''' start server ''' server.start()
Первым делом в коде программы нужно заменить Wi-Fi_Name
на имя нужной ести, а Wi-Fi_Password
на пароль от нее.