Apaguem o tópico
void ("ligatv"); {
irsend.sendNEC(0x20DF10EF, 32);
}
Boas,
Não mostras como na tua pagina interpretas o que estas a passar por GET para no final acionares a tua função.
A tua função está mal declarada...
O correcto será:
void ligatv()
{
irsend.sendNEC(0x20DF10EF, 32);
}
Poderia me ajudar a corrigir esse código amigo? Preciso muito e não tenho ideia de como fazer
Como?
Não disponibilizas o código todo ...
De qualquer modo ja te demonstrei como deves ter as funções criadas.Tenta
hugo007:
Como?
Não disponibilizas o código todo ...
De qualquer modo ja te demonstrei como deves ter as funções criadas.Tenta
Olá amigo, gostaria de tirar mais uma dúvida com você e agradecer imensamente pela ajuda que já me deu ao citar a função correta, veja como ficou as partes
Primeira parte:
if (readString.indexOf("?tv") > 0) //checks for on
{
ligatv();
Serial.println("LIGADO");
}
else {
if (readString.indexOf("?home") > 0) //checks for off
{
ligahome();
Serial.println("LIGADO");
}
}
if (readString.indexOf("?ligatudo") > 0) //checks for on
{
ligatudo();
Serial.println("LIGADO");
}
else {
if (readString.indexOf("?aux") > 0) //checks for off
{
aux();
Serial.println("LIGADO");
}
}
if (readString.indexOf("?volmais") > 0) //checks for on
{
volmais();
Serial.println("LIGADO");
}
else {
if (readString.indexOf("?volmenos") > 0) //checks for off
{
volmenos();
Serial.println("LIGADO");
}
}
readString = "";
HTML, só to colocando a parte que faz a função que eu citei no primeiro post
client.println("<a href=\"/?home\">LIGA/DESLIGA - Home</a>");
client.println("
");
client.println("
");
client.println("<a href=\"/?tv\">LIGA/DESLIGA - TV</a>");
client.println("
");
client.println("
");
client.println("<a href=\"/?ligatudo\">LIGA TUDO</a>");
client.println("
");
client.println("
");
client.println("<a href=\"/?aux\">AUX</a>");
client.println("
");
client.println("
");
client.println("<a href=\"/?volmais\">VOLUME +</a>
");
client.println("
");
client.println("<a href=\"/?volmenos\">VOLUME -</a>
");
Terceira parte que é a que o amigo me ajudou a corrigir
void ligatv() {
irsend.sendNEC(0x20DF10EF, 32);
}
void ligahome() {
irsend.sendNEC(0xDF30CF, 32);
}
void ligatudo() {
irsend.sendNEC(0x20DF10EF, 32); //TV
delay(1000);
irsend.sendNEC(0xDF30CF, 32); //HOME
delay(4000);
irsend.sendNEC(0xDF9867, 32); //AUX
}
void aux() {
irsend.sendNEC(0xDF9867, 32);
}
void volmais() {
irsend.sendNEC(0xDF22DD, 32); //TV
}
void volmenos() {
irsend.sendNEC(0xDFA25D, 32);
}
Observe que nesse void ligatudo(), nele eu pretendo ligar a tv, 1 segundo depois ligar o som e 4 segundos depois ativar o modo auxiliar do som, está funcionando, porém de forma diferente do que eu imaginei, quando aperto a função ligatudo na página web, tudo é ligado do jeito que eu to pedindo ai e depois tudo é desligado e em seguida tudo ligado mais uma vez, até da certo mais faz o void repetir 2 vezes
até da certo mais faz o void repetir 2 vezes
Se colocares um Serial.println vez ele a escrever duas vezes na consola?
void ligatudo() {
Serial.println("Iniciando a sequencia ");//debug only
irsend.sendNEC(0x20DF10EF, 32); //TV
delay(1000);
irsend.sendNEC(0xDF30CF, 32); //HOME
delay(4000);
irsend.sendNEC(0xDF9867, 32); //AUX
}
Se sim é porque isto:
if (readString.indexOf("?ligatudo") > 0) //checks for on
esta a ser interpretado duas vezes, o que pode significar que tens de arranjar uma forma mais eficiente.
Testa e reporta o que aconteceu
hugo007:
Se colocares um Serial.println vez ele a escrever duas vezes na consola?void ligatudo() {
Serial.println("Iniciando a sequencia ");//debug only
irsend.sendNEC(0x20DF10EF, 32); //TV
delay(1000);
irsend.sendNEC(0xDF30CF, 32); //HOME
delay(4000);
irsend.sendNEC(0xDF9867, 32); //AUX
}
Se sim é porque isto: if (readString.indexOf("?ligatudo") > 0) //checks for on esta a ser interpretado duas vezes, o que pode significar que tens de arranjar uma forma mais eficiente. Testa e reporta o que aconteceu
Boa tarde, no monitor serial aparece isso quando eu executo a função
Iniciando a sequencia
LIGADO
GG
EGE
TGET
GET
/GET /
?GET /?
lGET /?l
iGET /?li
gGET /?lig
aGET /?liga
tGET /?ligat
uGET /?ligatu
dGET /?ligatud
oGET /?ligatudo
GET /?ligatudo
HGET /?ligatudo H
TGET /?ligatudo HT
TGET /?ligatudo HTT
PGET /?ligatudo HTTP
/GET /?ligatudo HTTP/
1GET /?ligatudo HTTP/1
.GET /?ligatudo HTTP/1.
1GET /?ligatudo HTTP/1.1
GET /?ligatudo HTTP/1.1
Iniciando a sequencia
LIGADO
GG
EGE
TGET
GET
/GET /
?GET /?
lGET /?l
iGET /?li
gGET /?lig
aGET /?liga
tGET /?ligat
uGET /?ligatu
dGET /?ligatud
oGET /?ligatudo
GET /?ligatudo
HGET /?ligatudo H
TGET /?ligatudo HT
TGET /?ligatudo HTT
PGET /?ligatudo HTTP
/GET /?ligatudo HTTP/
1GET /?ligatudo HTTP/1
.GET /?ligatudo HTTP/1.
1GET /?ligatudo HTTP/1.1
GET /?ligatudo HTTP/1.1
Iniciando a sequencia
LIGADO
GG
EGE
TGET
GET
/GET /
fGET /f
aGET /fa
vGET /fav
iGET /favi
cGET /favic
oGET /favico
nGET /favicon
.GET /favicon.
iGET /favicon.i
cGET /favicon.ic
oGET /favicon.ico
GET /favicon.ico
HGET /favicon.ico H
TGET /favicon.ico HT
TGET /favicon.ico HTT
PGET /favicon.ico HTTP
/GET /favicon.ico HTTP/
1GET /favicon.ico HTTP/1
.GET /favicon.ico HTTP/1.
1GET /favicon.ico HTTP/1.1
GET /favicon.ico HTTP/1.1
Coloca todo o código, só com isso não da para entender o fluxo que o programa está a tomar.