Su dirección de correo electrónico no será publicada. Los campos obligatorios están marcados *

Estoy usando un arduino-uno, pero no puedo acceder a mi página web. Ya había asignado la dirección IP a Arduino. cuando ejecuto arduino (ctrl + shift + m), muestra la salida. Pero cuando accedo a mi página web, se mostrará "no se puede" llegar a esta página web.

Mi servidor web funciona bien con IP local y red local con cable ethernet.

trabajando con el reenvío de puertos / IP pública cuando se usa otra conexión de red para dispositivos móviles como se menciona en el artículo.

no funciona en mi dispositivo móvil o portátil cuando uso el enrutador Wifi / inalámbrico en la misma red con IP local. Avíseme dónde me estoy equivocando.

Necesito ayuda en este código porque cuando ocurre una emergencia por 4 (alto) no puedo volver al estado anterior... ¿cómo puedo hacer esto?

// SOLO ARDUINO 1.0+
// SOLO ARDUINO 1.0+

#incluir
#incluir
lectura booleana = falso;

////////////////////////////////////////////////////////////////////////

instagram viewer

//CONFIGURE
////////////////////////////////////////////////////////////////////////
byte ip [] = {192, 168, 16, 71}; // Solo configuración manual
// byte gateway [] = {192, 168, 1, 1}; // Solo configuración manual
// subred de bytes [] = {255, 255, 255, 0}; // Solo configuración manual

// si es necesario cambiar la dirección MAC (Muy raro)
byte mac [] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED};

Servidor EthernetServer = Servidor Ethernet (80); // puerto 80
////////////////////////////////////////////////////////////////////////

configuración nula () {
Serial.begin (9600);

// Los pines 10,11,12 y 13 son utilizados por el escudo de ethernet

pinMode (2, INPUT); // SWICH
pinMode (3, SALIDA); //LAMP
pinMode (4, INPUT); // EMERGENCIA
pinMode (6, ENTRADA);

Ethernet.begin (mac);
//Ethernet.begin (mac, ip, gateway, subred); // para la configuración manual

server.begin ();
Serial.println (Ethernet.localIP ());

}

bucle vacío () {

digitalWrite (6, BAJO);
if ((digitalRead (4) == LOW) || (digitalRead (6) == HIGH))
{
if (digitalRead (2) == ALTO)
{
digitalWrite (3, ALTO);
retraso (5000);
digitalWrite (3, BAJO);

}

}

checkForClient (); // escucha los clientes entrantes y procesa qequest.

}

vacío checkForClient () {

Cliente EthernetClient = server.available ();

if (cliente) {

// una solicitud http termina con una línea en blanco
boolean currentLineIsBlank = verdadero;
boolean sentHeader = false;

while (client.connected ()) {
if (cliente.disponible ()) {

if (! sentHeader) {
// envía un encabezado de respuesta http estándar
client.println ("HTTP / 1.1 200 OK");
client.println ("Tipo de contenido: texto / html");
client.println ();
sentHeader = verdadero;
}

char c = client.read ();

if (lectura && c == '') lectura = falso;
if (c == '?') lectura = verdadero; // encontró el?, comience a leer la información

si (leyendo) {
Serial.print (c);

interruptor (c) {
caso '4':
// agregue código aquí para activar el 2
triggerPin (4, cliente);
descanso;
caso '6':
// agregue código aquí para activar el 3
triggerPin (6, cliente);
descanso;

}

}

if (c == '\ n' && currentLineIsBlank) se rompe;

if (c == '\ n') {
currentLineIsBlank = verdadero;
} else if (c! = '\ r') {
currentLineIsBlank = false;
}

}
}

retraso (1); // dale tiempo al navegador web para recibir los datos
client.stop (); // cierra la conexión:

}

}

void triggerPin (pin interno, cliente de cliente Ethernet) {
// parpadea un pin: el cliente se necesita solo para fines de salida HTML.
client.print ("Activando el pin");
client.println (pin);
client.print ("");

si (pin, ALTO)
{
digitalWrite (4, ALTO);
digitalWrite (6, ALTO);}

}

¿No sería más fácil y económico hacer esto con una Raspberry Pi? No estoy realmente seguro porque nunca he usado un Arduino, pero sí tengo un Pi.