Помогите пожалуйста, возникла небольшая проблема с отправкой информации с Ардуино через изернет шильд w5100 в Мажордомо.
Отправляю состояние кнопки в таком виде:
if (AutoStatus == 0) {
if (digitalRead(SetAuto) == 1) {
digitalWrite(LedAuto, HIGH);
digitalWrite(LedManual, LOW);
AutoStatus = 1;
sprintf(buf, "GET /objects/?object=SetAutoStatus&op=m&m=SetAutoStatusExt");
sendHTTPRequest();
}
}
А вот и сам запрос на сервер (МЖД):
// Функция отправки HTTP-запроса на сервер
void sendHTTPRequest() {
Serial.println(buf);
if (client.connect(server2, 80)) {
Serial.println("OK");
client.println(buf);
client.println("Host: 192.168.21.80");
client.println();
delay(2000);
client.stop();
} else {
Serial.println("FAILED");
client.stop();
}
}
Всё замечательно работает, но как только выключаю МЖД (останавливаю программу), начинает контроллер дико зависать именно на выполнении функции отправки запроса. Причём, если просто выдернуть изернет провод из компа, то таких тормозов нет, а если выключить МЖД - подвисает. перезагрузки ничего не дают, надо что то добавлять в код, что бы без МЖД всё работало без тормозов. Я не так силён в программировании. Подскажите пожалуйста что сделать.