Есть два работающих скетча. В первом - на веб-страницу выводится температура с датчика, а во втором - с веб-страницы включается/выключается питание на нагрузку. Объединил эти скетчи в один. Все работает, за исключением вывода значения температуры на веб-страницу.
Это процедура с выводом температуры работающего скетча:
А тут - температура не выводится, остальное - работает:
Как правильно записать код, чтобы переменная %d второго спойлера в строке <center><h1>Температура: %d *C</h1></center>\ читалась? Заранее благодарю за помощь.
Это процедура с выводом температуры работающего скетча:
Код:
void handleRoot() {
digitalWrite ( led, 1 );
char temp[400];
celsius = getTemp();
Serial.println(celsius);
int tepm = celsius;
snprintf ( temp, 400,
"<html>\
<head>\
<meta charset='UTF-8' >\
<meta http-equiv='refresh' content='5'/>\
<title>Термометр</title>\
<style>\
body { background-color: #ffffdf; font-family: Arial, Helvetica, Sans-Serif; Color: #bb0000; }\
</style>\
</head>\
<body>\
<center><h1>Температура: %d *C</h1></center>\
<center><p> Tested! </p></center>\
</body>\
</html>",tepm
);
server.send ( 200, "text/html", temp );
digitalWrite ( led, 0 );
}
Код:
void handleRoot() {
digitalWrite ( led, 1 );
char temp[400];
celsius = getTemp();
Serial.println(celsius);
int tepm= celsius;
bool statrele1 = false;
//bool statrele2 = false;
IPAddress myIP = WiFi.softAPIP();
Serial.print("AP IP address: ");
Serial.println(myIP);
Serial.println("HTTP server started");
// Реле 1
if( server.hasArg("statrele1") ){
if( strncmp(server.arg("statrele1").c_str(),"1",1) == 0 )
statrele1 = true;
}
else {
statrele1 = PowerRele1;
}
// Формирование страницы
String out = "";
out =
"<html>\
<head>\
<meta charset=\"utf-8\" />\
<title>Информация, управление </title>\
<style>\
body { background-color: #ffffdf; font-family: Arial, Helvetica, Sans-Serif; Color: #bb0000; }\
</style>\
</head>\
<body>\
<center><p> </p></center>\
<center><h1>Температура: %d *C</h1></center>\
<center><p> ______________________________ </p></center>\
<center><p> </p></center>\
<center><h1>УПРАВЛЕНИЕ РЕЖИМОМ ПИТАНИЯ НАГРУЗКИ</h1></center>\
";
// Для реле 1
if( statrele1 ){
out+="\
<center><h1>Нагрузка находится под напряжением 220В!</h1></center> <hr width=200 size=50 align=centre color=yellow><center><h2><a href=\"/?statrele1=0\">выключить</a></h2></center>\
";
}
else {
out+="\
<hr width=200 size=50 align=centre color=grey><h2><center><a href=\"/?statrele1=1\">включить</a></h2></center>\
";
}
out+= "\
</body>\
</html>";
server.send ( 200, "text/html", out );
// Для реле 1
if( statrele1 != PowerRele1 ){
PowerRele1 = statrele1;
digitalWrite(rele1 , PowerRele1);
}
}
Как правильно записать код, чтобы переменная %d второго спойлера в строке <center><h1>Температура: %d *C</h1></center>\ читалась? Заранее благодарю за помощь.