Чтение обновленных последовательных данных из ESP8266
Я подключил свой ESP8266 к Arduino Uno на выводах 2 и 3 как RX и TX. Я отрегулировал скорость передачи данных и у меня нет проблем с получением данных от ESP8266.
ESP8266 подключается как клиент к серверу и захватывает количество лайков страницы Facebook. Данные на последовательном порту ESP8266 обновляются правильно каждый раз, когда ESP отправляет запрос get на сервер, чтобы получить обновленное количество лайков определенной страницы Facebook.
К сожалению, я не получаю это обновленное количество лайков на моем последовательном порту Arduino. Я всегда получаю одно и то же количество лайков. Мне приходится закрывать последовательное окно и открывать его снова, чтобы получить новое количество. Или сбрасывать Arduino, чтобы получить новое количество лайков.
Так почему же он не публикует последнее количество лайков, отправленное с ESP на Arduino мгновенно, без необходимости перезагрузки Arduino? Возможно, у меня проблема в void loop()
.
Потому что я отображаю эти данные на внешнем дисплее и мне нужно, чтобы они обновлялись без необходимости каждый раз перезагружать Arduino для получения последних данных.
void loop() {
char c;
while (esp8266.available() && c != '\n') {
c = esp8266.read();
response += c;
}
//Если конец строки
if (c == '\n') {
//Получаем только строку лайков
if(likes = response.substring(response.indexOf("Likes:")+6, response.indexOf("::"))) {
//Фильтрация некоторых ненужных строк
if((strstr(likes.c_str(), "URL")) == NULL) {
currentLikes = atol(likes.c_str());
Serial.print(currentLikes);
//Вывод количества лайков на последовательный порт
}
Serial.println();
}
}
}
@Kegham K., 👍0
1 ответ
Спасибо всем. Мне приходилось каждый раз очищать строку ответа.
Я только что добавил response = "";
после Serial.print(currentLikes);
- AT-команда не отвечает на последовательный монитор
- Получить данные с сайта с помощью ESP8266 с помощью AT-команд
- Программное обеспечениеSerial с ESP8266
- Как связаться с ESP8266 ESP01, отправив данные через программный сериал на Arduino Uno?
- Отправить строку данных из Arduino UNO в ESP8266-01
- Последовательная связь от Arduino до ESP8266 NodeMCU работает, но от NodeMCU до Arduino не работает
- Отправьте несколько значений из Arduino Uno в nodeMCU, используя последовательный порт.
- Повреждение данных SoftwareSerial - поиск предложений