Отправка данных из ESP8266 в Arduino

LoveDream
Offline
Зарегистрирован: 25.01.2018

Ребят вопрос, как передать уставку с WEB страници esp в arduino. Прошивка в esp АТ. Строка в ESP передаётся типо такой.

"<form action='a' method='GET'>Желаемая температура<input type='number' value='String (temp)'> " + String (tempUSTAVKA) + "</form>"

А в ардуино:

 if(strncmp(pb, "GET /a", 6) == 0)
       {
        clearSerialBuffer();        
        temp ==  tempUSTAVKA
И не работает....
Куда копать?
Понимаю, что парсить команды еспехи сложно, но я надеюсь на разумный ответ.
 
 
P.s. я не программист, и прошу помощи.
P.p.s. Просьба ЕвгенияП воздержаться от коментариев.
Penni
Penni аватар
Offline
Зарегистрирован: 18.01.2015

Вчера же вроде нодемку прошивка была...

что в буфере pb содержится в сыром виде? Выкладывайте ввесь код (как положено).

DIYMan
DIYMan аватар
Offline
Зарегистрирован: 23.11.2015

"Строка передаётся типо такой" - а заголовки HTTP где?

LoveDream
Offline
Зарегистрирован: 25.01.2018
int ch_id, packet_len;
 char *pb;  
 ESPport.readBytesUntil('\n', buffer, BUFFER_SIZE); 
 if(strncmp(buffer, "+IPD,", 5)==0) 
  {
   sscanf(buffer+5, "%d,%d", &ch_id, &packet_len);
   if (packet_len > 0) 
    {
      pb = buffer+5;
      while(*pb!=':') pb++;
      pb++;      
      if(strncmp(pb, "GET / ", 6) == 0)
       {
        clearSerialBuffer();
        otvet_klienty(ch_id);
       }         

//Обработка WEB кнопок из ESP8266 get запросом
   
//------------------СВЕТОДИОД НА ПЛАТЕ D13----------------------------------
      if(strncmp(pb, "GET /a", 6) == 0)
       {
        clearSerialBuffer();        
        if(ledState == LOW) 
          {
            ledState = HIGH;
            vklotkl = "VKL";
Serial.println("ledState HIGH ");
          }        
        else 
          {
            ledState = LOW;
            vklotkl = "OTKL";
Serial.println("ledState LOW ");
          }        
        digitalWrite(ledPin, ledState);
        otvet_klienty(ch_id);
       } 
    }
  }
  clearBuffer();

Вот пример работы со светодиодом на плате. Он работает.

Полный код врятли будет интересен, т.к. сделан в FLPROG.

LoveDream
Offline
Зарегистрирован: 25.01.2018

на месте. Строка вырвана из блока 

  String Content = "<!doctype html>"
"<html><body>"
"<head><meta name=\"viewport\" content=\"width=device-width\"/> <meta charset=\"utf-8\"><title>Главная</title><style>button{color:black;padding: 10px 27px;}</style></head>"
...................................
"</html>";

 

DIYMan
DIYMan аватар
Offline
Зарегистрирован: 23.11.2015

LoveDream пишет:

Полный код врятли будет интересен, т.к. сделан в FLPROG.

Ясно, там чёрт ногу сломит.

DIYMan
DIYMan аватар
Offline
Зарегистрирован: 23.11.2015

LoveDream пишет:

на месте. Строка вырвана из блока 

  String Content = "<!doctype html>"
"<html><body>"
"<head><meta name=\"viewport\" content=\"width=device-width\"/> <meta charset=\"utf-8\"><title>Главная</title><style>button{color:black;padding: 10px 27px;}</style></head>"
...................................
"</html>";

И даже в этом блоке я не вижу служебных заголовков HTTP-ответа.