Показаны различия между двумя версиями страницы.
| Следующая версия | Предыдущая версия | ||
| products:laboratory_iot_c:exp59 [2024/12/05 14:34] – создано labuser30 | products:laboratory_iot_c:exp59 [2024/12/05 14:40] (текущий) – [Программный код эксперимента] labuser30 | ||
|---|---|---|---|
| Строка 25: | Строка 25: | ||
| ==== Программный код эксперимента ==== | ==== Программный код эксперимента ==== | ||
| - | < | + | < |
| - | from micropyserver import MicroPyServer | + | #include < |
| - | import time | + | #include < |
| - | from machine import Pin, PWM | + | |
| - | import network | + | |
| - | import gc | + | |
| - | _init() | + | |
| - | gc.collect() | + | |
| - | Led = Pin(13, Pin.OUT) | + | #define WIFI_NAME |
| - | pwmLed = PWM(Led) | + | #define WIFI_PASSWORD " |
| + | #define PIN_LED 13 | ||
| - | wlan_id = " | + | ESP8266WebServer server(80); |
| - | wlan_pass = " | + | |
| - | wlan = network.WLAN(network.STA_IF) | + | void indexPage() { |
| - | wlan.active(True) | + | if (server.hasArg(" |
| - | wlan.connect(wlan_id, wlan_pass) | + | |
| - | time.sleep(1) | + | |
| + | } else { | ||
| + | | ||
| + | } | ||
| + | } | ||
| - | while wlan.isconnected() == False: | + | void setup() { |
| - | | + | Serial.begin(9600); |
| + | Serial.println(); | ||
| + | pinMode(PIN_LED, | ||
| + | analogWriteRange(1024); | ||
| + | analogWrite(PIN_LED, | ||
| + | |||
| + | Serial.print(" | ||
| + | WiFi.mode(WIFI_STA); | ||
| + | WiFi.begin(WIFI_NAME, | ||
| + | | ||
| + | | ||
| + | delay(500); | ||
| + | } | ||
| + | Serial.println(); | ||
| + | Serial.println(" | ||
| + | Serial.print(" | ||
| + | Serial.println(WiFi.localIP()); | ||
| - | print(' | + | |
| - | + | server.begin(); | |
| - | + | } | |
| - | def index(request, | + | void loop() { |
| - | ''' | + | server.handleClient(); |
| - | if (' | + | } |
| - | pwmLed.duty(int(params[' | + | |
| - | | + | |
| - | | + | |
| - | | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | server = MicroPyServer() | + | |
| - | ''' | + | |
| - | server.add_route("/", | + | |
| - | + | ||
| - | ''' | + | |
| - | server.start() | + | |
| </ | </ | ||
| <WRAP center round important 60%> | <WRAP center round important 60%> | ||
| - | Первым делом в коде программы нужно заменить '' | + | Первым делом в коде программы нужно заменить '' |
| </ | </ | ||
| - | При обращении к главной странице сервиса происходит вызов функции '' | + | При обращении к главной странице сервиса происходит вызов функции '' |
| - | < | + | < |
| - | server.add_route("/", | + | server.on("/", |
| </ | </ | ||
| - | Функция '' | + | Сначала мы проверяем наличие параметра '' |
| - | < | + | < |
| - | if ('duty' in params): | + | if (server.hasArg(" |
| </ | </ | ||
| если такого параметра не было передано серверу, | если такого параметра не было передано серверу, | ||
| - | < | + | < |
| - | | + | |
| - | server.send(" | + | server.send(200, " |
| </ | </ | ||
| - | Так как URL передается в виде строки и, соответственно, | + | Так как URL передается в виде строки и, соответственно, |
| Попробуй отправлять запрос на сервер с разными значениями параметра '' | Попробуй отправлять запрос на сервер с разными значениями параметра '' | ||