Здравствуйте, помогите пожалуйста разобраться, есть свой сервер на бесплатном хостинге, там две кнопки radio со значениями 0 и 1 и отправка значения в файл txt. Код вывода значения add_data.php для esp8266:
Хочу в зависимости от полученного значения включать светодиод через gpio2. В монитор порта выводится полученное значение, но на ножке оно не меняется, подскажите пожалуйста, в чем ошибки кода.
PHP:
<?php
$myFile = "txt/out-1.txt";
$fh = fopen($myFile, 'r');
$theData = fread($fh, filesize($myFile));
fclose($fh);
echo $theData;
?>
Код:
#include <ESP8266WiFi.h>
const char* ssid = "****";
const char* password = "****";
const char* host = "example.com";
int value=0;
int led=2;
void setup()
{
Serial.begin(115200);
Serial.println();
Serial.printf("Connecting to %s ", ssid);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
Serial.println(" connected");
pinMode( led, OUTPUT);
digitalWrite(led, LOW);
}
void loop()
{
WiFiClient client;
Serial.printf("\n[Connecting to %s ... ", host);
if (client.connect(host, 80))
{
client.print( "GET /add_data.php?");
client.println( " HTTP/1.1");
client.print( "Host: " );
client.println(host);
client.println( "Connection: close" );
client.println();
client.println();
delay(200);
while (client.available())
{
String line = client.readStringUntil('\n');
Serial.println(line);
char c = client.read();
if ( c=='1')
{
value=1;
}
if ( c=='0')
{
value=0;
}
}
client.stop();
client.flush();
delay(100);
}
else
{
client.stop();
delay(1000);
client.connect(host, 80);
}
if ( value==1)
{
digitalWrite (led, HIGH);
}
else
{
digitalWrite(led, LOW);
}
delay(10000);
}