Добрый день.
Решил сделать погодную станцию.
К Adruino Uno подключены DHT22, esp8266, LCD Odroid-Show.
LCD Odroid-Show принимает с ардуино строку, разделенную символами "#", в которой находятся параметры с датчика температуры и влажности + хочу чтоб передавались в этой строке данные прогноза погоды на сегодня и на завтра (ночь+день). LCD Odroid-Show принимает строку, разбирает и отображает на экране. Благо он самодостаточен, построен на arduino uno.
Передача по I2C - работает.
Для получения прогноза погоды я у себя на сайте разместил php скрипт, который разбирает XML прогноз с Яндекса и отображает это всё в виде простой строки вида: -11#yasno#63#731#-10#-7*
где: Текущая температура # Облачно/ясно и т.п.#влажность#давление#темп. завтра ночью#температура завтра днем*
Проблема простая - не могу прочитать эту строку с сайта(.
Модуль соединяется с роутером нормально.
Команда запроса:
Как мне вытащить текст с сайта?
И еще, почему-то SoftwareSerial не работает для отладки.
Если вывожу результат в Serial, то в мониторе:
Решил сделать погодную станцию.
К Adruino Uno подключены DHT22, esp8266, LCD Odroid-Show.
LCD Odroid-Show принимает с ардуино строку, разделенную символами "#", в которой находятся параметры с датчика температуры и влажности + хочу чтоб передавались в этой строке данные прогноза погоды на сегодня и на завтра (ночь+день). LCD Odroid-Show принимает строку, разбирает и отображает на экране. Благо он самодостаточен, построен на arduino uno.
Передача по I2C - работает.
Для получения прогноза погоды я у себя на сайте разместил php скрипт, который разбирает XML прогноз с Яндекса и отображает это всё в виде простой строки вида: -11#yasno#63#731#-10#-7*
где: Текущая температура # Облачно/ясно и т.п.#влажность#давление#темп. завтра ночью#температура завтра днем*
Проблема простая - не могу прочитать эту строку с сайта(.
Модуль соединяется с роутером нормально.
Команда запроса:
Код:
String cmd = "AT+CIPSTART=\"TCP\",\"";
cmd += DST_IP;
cmd += "\",80";
Serial.println(cmd);
dbgSerial.println(cmd);
delay(2000);
if(Serial.find("Error")) return;
cmd = "GET [URL]http://mysite.ru/weather/index.php[/URL]";
cmd += " HTTP/1.0\r\nHost: [URL]http://mysite.ru\r\n\r\n[/URL]";
Serial.print("AT+CIPSEND=");
Serial.println(cmd.length());
if(Serial.find(">")){
dbgSerial.print(">");
}else{
Serial.println("AT+CIPCLOSE");
dbgSerial.println("connection timeout");
delay(3000);
return;
}
Serial.print(cmd);
И еще, почему-то SoftwareSerial не работает для отладки.
Если вывожу результат в Serial, то в мониторе:
Код:
AT+RST
AT+CWMODE=1
AT+CWJAP="380v","passw"
AT+CIPMUX=0
AT+CIPSTART="TCP","92.53.125.54",80
AT+CIPSEND=89
GET [URL]http://mysite.ru/weather/index.php[/URL] HTTP/1.0
Host: [URL]http://mysite.ru[/URL]
÷ GET [URL]http://mysit)üÕ;öÿÓû1{¥Þ7ì¹÷<èÄŸmÙÌ~~al.^i/ýOÿÿÍÍ÷v.ru/weather/index.php[/URL] HTTP/1.0
Host: [URL]http://mysite.ru[/URL]
AT+CIPSTART="TCP","92.53.125.54",80
AT+CIPSEND=89
AT+CIPCLOSE
v.ru/weather/index.php HTTP/1.0
Host: [URL]http://mysite.ru[/URL]
AT+CIPCLOSE
Последнее редактирование: