#http #arduino #wifi
#http #arduino #wifi
Вопрос:
Мой php-файл на сервере. Просто простая программа php. Он отправит ответ на мой ESP8266 :
<?php
ECHO $_GET['subject'];
ECHO "SELAMAT DATANG";
?>
Мой эскиз в arduino uno. Просто в цикле () :
void loop() {
// put your main code here, to run repeatedly:
data="subject=anis";
String requestGet="GET /index.php HTTP/1.0rnHost: nyalalampu.atwebpages.comrnAccept: */*rnContent-Length: " String(data.length()) "rnrn" data;
anis.println("AT CIPSTART="TCP","nyalalampu.atwebpages.com",80rn");
delay(2000);
while(anis.available()>0)
{
char c=anis.read();
}
anis.println("AT CIPSEND=" String(requestGet.length() 2) "rn");
delay(2000);
while(anis.available()>0)
{
char c=anis.read();
}
anis.println(requestGet);
delay(1);
while(anis.available()>0)
{
String a=anis.readString();
Serial.println(a);
}
anis.println("AT CIPCLOSErn");
delay(1000);
while(anis.available()>0)
{
char c=anis.read();
}
}
Данные, которые я получаю с сервера :
IPD,165:HTTP/1.1 200 OK
Date: Wed, 14 Oct 2020 22:46:16 GMT
Serve hes-/e
T
Похоже, я просто получаю половину данных с сервера, а остальные теряются. Может кто-нибудь показать мне что-нибудь или сказать, что не так с моим эскизом? TQ
Комментарии:
1. Измените
delay(1);
на более длинное значение, 165 байт данных поступают дольше.2. последовательный запуск медленный, поэтому между полученными символами есть пробелы, поэтому функция available() иногда возвращает 0
3. @Juraj Tq сэр … у вас есть какой-нибудь учебник, в котором я могу решить свою проблему?
4. Я использую readBytesUntil.arduino.cc/reference/en/language/functions/communication/serial /…
5. @Juraj Alhamdulillah …tq sir…it он работает на меня…