Как отправить последовательные данные (URL) на sim800l для длинных строк - PullRequest
0 голосов
/ 17 мая 2019

Я пытаюсь отправить запрос с помощью sim800l, но при отправке длинной строки возникает странная проблема

выход моей последовательной консоли

AT+SAPBR=3,1,"APN","free"
OK

AT+SAPBR=1,1
OK

AT+SAPBR=2,1

+SAPBR: 1,1,"10.124.170.82"
OK

AT+HTTPINIT
OK

AT+HTTPPARA="CID",1
OK

AT+HTTPPARA="URL",","http://naviwatt.fr/api/boat/AETFC58003****/*****/time/35"
AT+HTTPPARA="URL",","http://naviwatt.fr/api/boat/AETFC58003****
AT+HTTPACTION=1

ERROR

часть, где ошибка может быть

//setup the request
String request = "AT+HTTPPARA=\"URL\",\",\"http://naviwatt.fr/api/boat/" + Id + "/" + Password + "/time/" + counter + "\"";

Serial.println("" + request);

delay(200);
sim.println(request);
sleep();

и сон (); функция

void sleep(){
  String dump;
  delay(100);
  while(!sim.available()){
    Serial.print("waiting");
    delay(200);
  }
  while(sim.available()){
     dump = sim.readString();
     Serial.println(dump);
   }
}

Serial.println выводит на консоль правильную строку для использования

Но когда я отправляю эту же строку в sim800l, URL кажется не полным

1 Ответ

0 голосов
/ 29 мая 2019

Ваша команда AT + HTTPPATA неверна.

Это должно быть

AT+HTTPPARA="URL","http://naviwatt.fr/api/boat/AETFC58003****/*****/time/35"

вместо

AT+HTTPPARA="URL",","http://naviwatt.fr/api/boat/AETFC58003****/*****/time/35"

их дополнительные ," в вашемкоманда.

Аналогично, ваша вторая команда должна быть

AT+HTTPPARA="URL","http://naviwatt.fr/api/boat/AETFC58003****

вместо

AT+HTTPPARA="URL",","http://naviwatt.fr/api/boat/AETFC58003****

Ваша установка должна быть

String request = "AT+HTTPPARA=\"URL\",\"http://naviwatt.fr/api/boat/" + Id + "/" + Password + "/time/" + counter + "\"";
...