ARDUINO MEGA
MODULO WIFI ESP8266 ESP-01S
ADAPTADOR ESP-01
CONEXIONES:
CONFIGURACIÓN DE MODULO WIFI
void setup()
{ Serial.begin(115200);
Serial2.begin(115200);
Serial.println("ESPERANDO COMANDOS AT: ");
}
void loop()
{
if (Serial2.available())
{ char c = Serial2.read() ;
Serial.print(c);
}
if (Serial.available())
{ char c = Serial.read();
Serial2.print(c);
}
}
COMANDOS AT:
AT+RST RESETEA
EL MODULO WIFI
AT+CWMODE? EL
MODO DE FUNCIONAMIENTO DE MODULO
AT+CWLAP SIRVE
PARA VER LA REDES INNALAMBIRCAS DISPONIBLES
AT+CWJAP=”NOMBREWIFI”,”CONTRASEÑA”
AT+CIFSR VER
LA IP ASIGNADA
AT+CIPMUX=1 ABRE
UN SERVICIO EN 1
AT+CIPSERVER=1,80 ABRE EL SERVICIO 1 EN EL PUERTO 80
AT+CIOBAUD=? NOS DICES LA VELOCIDAD DE CONEXIÓN
AT+SEND=0,NUMERO DE CARACTERES A ENVIAR;
AT+CWSAP? NOMBRE DE LA WIFI DE MODULO
AT+GMR FIRMWARE
INSTALADO
AT+CWLIF VER
SI HAY ALGUIEN CONECTADO A MODULO
CODIGO ARDUINO:
String prueba;
void setup()
{
Serial.begin(115200);
Serial2.begin(115200);
pinMode(7,OUTPUT);
delay(500);
Serial.println("ESPERANDO COMANDOS AT: ");
startwifi();
}
void loop()
{
if (Serial2.available()>0){
String c = Serial2.readString() ;
Serial.print(c);
http("HTTP/1.1 200 OK\n");
http("Content-Type: text/html\n");
http("Connection: close\n");
http("\n");
if(c.indexOf("encender")>=0) {
digitalWrite(7,HIGH);
http("rele encendido");
}
if(c.indexOf("apagar")>=0) {
digitalWrite(7,LOW);
http("rele apagado");
}
Serial.println("he salido");
delay(100);
Serial2.println("AT+CIPCLOSE=0");
prueba=Serial2.readString();
Serial.println(prueba);
}
}
void startwifi(){
delay(1000);
Serial2.println("AT+RST");
delay(500);
prueba=Serial2.readString();
Serial.println(prueba);
Serial2.println("AT+CIPMUX=1");
prueba=Serial2.readString();
Serial.println(prueba);
delay(500);
Serial2.println("AT+CIPSERVER=1,80");
prueba=Serial2.readString();
Serial.println(prueba);
delay(500);
}
void http(String output)
{
Serial2.print("AT+CIPSEND=0,"); // AT+CIPSEND=0, num
Serial2.println(output.length());
if (Serial2.find(">")) // Si recibimos la peticion del mensaje
{ Serial.println(output);
Serial2.println(output); //Aqui va el string
delay(10);
while( Serial2.available() > 0) // Busca el OK en la respuesta
{
Serial.println("mensaje mandado");
if ( Serial2.find("SEND OK") ) break;
}
}
}
APLICACIÓN APPINVENTOR
No hay comentarios:
Publicar un comentario