Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| products:laboratory_iot:exp59 [2020/06/16 19:25] – labuser29 | products:laboratory_iot:exp59 [2024/12/05 14:36] (текущий) – [Программный код эксперимента] labuser30 | ||
|---|---|---|---|
| Строка 15: | Строка 15: | ||
| Остановимся подробнее на параметрах. Параметры состоят из пар **имя=значение**, | Остановимся подробнее на параметрах. Параметры состоят из пар **имя=значение**, | ||
| - | Если параметр один, то он записывается '' | + | Если параметр один, то он записывается '' |
| - | Как раз с помощью параметра мы и можем передавать нашему серверу значение яркости светодиода. Например так: '' | + | Как раз с помощью параметра мы и можем передавать нашему серверу значение яркости светодиода. Например так: '' |
| + | |||
| + | ==== Схема эксперимента ==== | ||
| + | {{ : | ||
| + | // | ||
| + | |||
| + | ==== Программный код эксперимента ==== | ||
| + | |||
| + | <file python Exp59.py[enable_line_numbers=" | ||
| + | from micropyserver import MicroPyServer | ||
| + | import time | ||
| + | from machine import Pin, PWM | ||
| + | import network | ||
| + | import gc | ||
| + | _init() | ||
| + | gc.collect() | ||
| + | |||
| + | Led = Pin(13, Pin.OUT) | ||
| + | pwmLed = PWM(Led) | ||
| + | |||
| + | wlan_id = " | ||
| + | wlan_pass = " | ||
| + | |||
| + | wlan = network.WLAN(network.STA_IF) | ||
| + | wlan.active(True) | ||
| + | wlan.connect(wlan_id, | ||
| + | time.sleep(1) | ||
| + | |||
| + | while wlan.isconnected() == False: | ||
| + | pass | ||
| + | |||
| + | print(' | ||
| + | |||
| + | |||
| + | def index(request, | ||
| + | ''' | ||
| + | if (' | ||
| + | pwmLed.duty(int(params[' | ||
| + | server.send(" | ||
| + | else: | ||
| + | server.send(" | ||
| + | |||
| + | |||
| + | |||
| + | server = MicroPyServer() | ||
| + | ''' | ||
| + | server.add_route("/", | ||
| + | |||
| + | ''' | ||
| + | server.start() | ||
| + | </ | ||
| + | |||
| + | <WRAP center round important 60%> | ||
| + | Первым делом в коде программы нужно заменить '' | ||
| + | </ | ||
| + | |||
| + | При обращении к главной странице сервиса происходит вызов функции '' | ||
| + | <code python[enable_line_numbers=" | ||
| + | server.add_route("/", | ||
| + | </ | ||
| + | |||
| + | Функция '' | ||
| + | |||
| + | <code python[enable_line_numbers=" | ||
| + | if (' | ||
| + | </ | ||
| + | |||
| + | если такого параметра не было передано серверу, | ||
| + | <code python[enable_line_numbers=" | ||
| + | pwmLed.duty(int(params[' | ||
| + | server.send(" | ||
| + | </ | ||
| + | |||
| + | Так как URL передается в виде строки и, соответственно, | ||
| + | |||
| + | Попробуй отправлять запрос на сервер с разными значениями параметра '' | ||
| + | {{ : | ||
| + | {{ : | ||
| + | {{ : | ||