Скрыть объявление
На нашем форуме недоступен просмотр изображений для неавторизованных пользователей. Если Вы уже зарегистрированы на нашем форуме, то можете войти. Если у Вас еще нет аккаунта, мы будем рады, если Вы к нам присоединитесь. Зарегистрироваться Вы можете здесь.

Вопрос Как передать параметр в ESP

Тема в разделе "Общие вопросы по esp8266", создана пользователем MihaNN52, 16 май 2017.

  1. MihaNN52

    MihaNN52 Новичок

    Сообщения:
    78
    Симпатии:
    1
    Друзья, подскажите как проще и лучше отправить данные в ESP из сети WIFI.
    Необходимо получать данные для записи в переменную.
    Переменная -значение от 1 до 1000
    http://[ip]/значение
    ESP это число записывает в переменную.
     
  2. NeoroN

    NeoroN Читатель

    Сообщения:
    150
    Симпатии:
    22
    Проще это использовать прошивку nodemcu там вот есть заготовка вебсервера на Lua с парсером параметров.
     
    MihaNN52 нравится это.
  3. MihaNN52

    MihaNN52 Новичок

    Сообщения:
    78
    Симпатии:
    1
    я остальное не напишу в lua....
     
  4. Izzm

    Izzm Новичок

    Сообщения:
    17
    Симпатии:
    3
  5. Юрий Ботов

    Юрий Ботов Moderator Команда форума

    Сообщения:
    1.050
    Симпатии:
    175
    Это единственная функция которую должно выполнять устройство и ли а нем должны работать еще какие-то сервера/клиенты?
     
  6. VicSpectator

    VicSpectator Новичок

    Сообщения:
    39
    Симпатии:
    1
    А обрабатывать GET-запросы умеете? А POST-запросы?
    Не думаю, что именно "/значение" реализуемо. Но можно завести другие "странички", и обрабатывать запросы так, как надо.
    В используемом мной AsyncWebServer есть запись
    Код (Text):
    1. server.on("/ADDRESS", HTTP_GET, [](AsyncWebServerRequest *request){...})
    где вместо многоточия можно вписать нужную операцию, например
    Код (Text):
    1. request->hasParam("download")
    Я сам ещё только учусь :) Но считаю, что надо копать именно в этом направлении.
     
  7. NeoroN

    NeoroN Читатель

    Сообщения:
    150
    Симпатии:
    22
    да http://[ip]/значение или http://[ip]/page?var=значение не имеет принципиальных различий. Вопрос в том как обработка вебзапрососв будет сочетаться с остальным кодом. Автор приводит лишь часть задачи, другую скрывая по неким соображениям. Даже не упомянул среду разработки - получил кучу обстракных примеров. И ответ на вопрос - "если очень нужно то все можно" и знающим написать нет никаких трудностей.
     
  8. MihaNN52

    MihaNN52 Новичок

    Сообщения:
    78
    Симпатии:
    1
    Мне надо лишь получить вот этот параметр из вне чтоб с ним работать.
    В задачу лучше не вникать т.к она еще точно не определена, в любом случае задачи разделил и вот с этой пока непонятно. Можно былоб использовать mqtt, но это усложнит отправку т.к отправлять будет 1С.
    Смотрю в сторону WebServer с HTTP запросами. Тема интересная и требует изучения.
     
  9. view24

    view24 Читатель

    Сообщения:
    163
    Симпатии:
    7
    Постановка задачи не совсем корректна. На одном конце ESP, а что на другом конце? Известно только, что между ними WIFI. Проясните про объект на другом конце.
     
  10. Zarif

    Zarif Новичок

    Сообщения:
    2
    Симпатии:
    0
    Такая же задача. Присвоить данные переменной в ESP server. Пока пользуюсь вот так.

    server.on("/qwerty", [](){
    x6 = 333;
    server.send(200, "text/html", webPage()); //
    delay(100);
    });
    А хотелось бы отправлять значения и присваивать их к переменной а потом их обрабатывать . Например отправлять с андроида любые данные например вида 1234567890 и присвоить их переменной в сервере esp. Помогите пожалуйста.
     
  11. Zarif

    Zarif Новичок

    Сообщения:
    2
    Симпатии:
    0
    а нельзя в таком виде это реализовать ?

    server.on("/qwerty", [](){
    x6 = 333;
    server.send(200, "text/html", webPage()); //
    delay(100);
    });


    server.on("/HkIyFrTgSwAzCdGm", [](){
    x6 = 111;
    server.send(200, "text/html", webPage()); //polis light on
    delay(100);
    });

    server.on и дальше переменная и присваивание к ней. Я пока новичок и поэтому прошу понимания. Спасибо.
     
  12. NeoroN

    NeoroN Читатель

    Сообщения:
    150
    Симпатии:
    22
    Думаю как то так.
    Код (C):
    1.  
    2. server.on("/qwerty", HTTP_GET, [](){
    3. if (!server.hasArg("dir")) {
    4.     return server.send(500, "text/plain", "No dir\r\n");
    5.   }
    6.   String dir = server.arg("dir");
    7. return server.send(200, "text/html", webPage(dir)); //
    8. });
    9.  
    http://myhost/qwerty?dir=blablabla
    Уж типы String в int конвертировать вы сможете без посторонней помощи?
    С нашими новичками не перестаю узнавать что-то новое
    esp8266/Arduino
     
  13. PMA

    PMA Новичок

    Сообщения:
    5
    Симпатии:
    0
    подниму тему. пример не работает для есп32
     
  14. Сергей_Ф

    Сергей_Ф Moderator Команда форума

    Сообщения:
    2.148
    Симпатии:
    226
    @PMA это смотря к чему вы пример прикладываете. Не работать он не может, если все сделано правильно.
     
    Алексей. нравится это.

Поделиться этой страницей