martes, 24 de marzo de 2026

Proyecto huerto

 Código Arduino:


#include <WiFiS3.h>

const char* ssid     = "proyecto";
const char* password = "lalomora";

//Crear un servidor Web que escucha en el puerto 80
WiFiServer server(80);
const int ledPin = 13;

void setup() {
  Serial.begin(115200);
  pinMode(ledPin, OUTPUT);
  digitalWrite(ledPin, LOW);

  //Serial.println("--- Inicio: intento DHCP primero ---");

  WiFi.begin(ssid, password);

  unsigned long start = millis();
  const unsigned long dhcpTimeout = 8000; // ms
  bool gotIP = false;

  while (millis() - start < dhcpTimeout) {
    if (WiFi.status() == WL_CONNECTED && WiFi.localIP() != IPAddress((uint32_t)0)) {
      gotIP = true;
      break;
    }
    Serial.print(".");
    delay(500);
  }

  if (gotIP) {
    Serial.println();
    Serial.println("DHCP OK");
    Serial.print("IP (DHCP): "); Serial.println(WiFi.localIP());
  }

  // info básica
  Serial.print("SSID conectado: "); Serial.println(WiFi.SSID());
 

  // iniciar servidor
  server.begin();
  //Serial.println("Servidor web iniciado en puerto 80");
}

void loop() {
  WiFiClient client = server.available();
  if (client) {
    String request = client.readStringUntil('\r');
    client.flush();

    // Control LED
    if (request.indexOf("/on") >= 0) {
      digitalWrite(ledPin, HIGH);
      client.println("HTTP/1.1 200 OK");
      client.println("Content-Type: text/plain");
      client.println();
      client.println("LED ON");
    }
    else if (request.indexOf("/off") >= 0) {
      digitalWrite(ledPin, LOW);
      client.println("HTTP/1.1 200 OK");
      client.println("Content-Type: text/plain");
      client.println();
      client.println("LED OFF");
    }
    else if (request.indexOf("/") >= 0) {
      client.println("HTTP/1.1 200 OK");
      client.println("Content-Type: text/plain");
      client.println();
      client.println("OK"); // respuesta para verificar conexión
    }

    delay(1);
    client.stop();
  }
}

Proyecto de AppInventor