در این پروژه ما یک وب سرور روی ESP8266 ایجاد می کنیم که دوتا LED را کنترل می کند. شما می تونید این دو LED را با رله عوض کنید. و با آن وسایل خانه را کنترل کنید.
در ادامه کد را کپی کرده و با استفاده از برنامه ی آردوینو در ESP8266 آپلود کنید. فقط به یاد داشته باشید که پسورد و اسم WiFi خودتون را باید وارد کنید. من از بورد ESP8266 سری 01 استفاده می کنم. بنابراین پایه ی 0 و 2 را در برنامه نوشته ام. شما اگر از مدلهای دیگر استفاده می کنید می توانید این پایه ها را عوض کنید.
ESP8266 WebServer Program:
#include <ESP8266WiFi.h> #include <WiFiClient.h> #include <ESP8266WebServer.h> #include <ESP8266mDNS.h> MDNSResponder mdns; // Replace with your network credentials const char* ssid = "YOUR_SSID"; const char* password = "YOUR_PASSWORD"; ESP8266WebServer server(80); String webPage = ""; int gpio0_pin = 0; int gpio2_pin = 2; void setup(void){ webPage += "<h1>ESP8266 Web Server</h1><p>Socket #1 <a href=\"socket1On\"><button>ON</button></a> <a href=\"socket1Off\"><button>OFF</button></a></p>"; webPage += "<p>Socket #2 <a href=\"socket2On\"><button>ON</button></a> <a href=\"socket2Off\"><button>OFF</button></a></p>"; // preparing GPIOs pinMode(gpio0_pin, OUTPUT); digitalWrite(gpio0_pin, LOW); pinMode(gpio2_pin, OUTPUT); digitalWrite(gpio2_pin, LOW); delay(1000); Serial.begin(115200); WiFi.begin(ssid, password); Serial.println(""); // Wait for connection while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.print("Connected to "); Serial.println(ssid); Serial.print("IP address: "); Serial.println(WiFi.localIP()); if (mdns.begin("esp8266", WiFi.localIP())) { Serial.println("MDNS responder started"); } server.on("/", [](){ server.send(200, "text/html", webPage); }); server.on("/socket1On", [](){ server.send(200, "text/html", webPage); digitalWrite(gpio0_pin, HIGH); delay(1000); }); server.on("/socket1Off", [](){ server.send(200, "text/html", webPage); digitalWrite(gpio0_pin, LOW); delay(1000); }); server.on("/socket2On", [](){ server.send(200, "text/html", webPage); digitalWrite(gpio2_pin, HIGH); delay(1000); }); server.on("/socket2Off", [](){ server.send(200, "text/html", webPage); digitalWrite(gpio2_pin, LOW); delay(1000); }); server.begin(); Serial.println("HTTP server started"); } void loop(void){ server.handleClient(); }
وقتی برنامه را آپلود کردید، بعد از اتصال به اینترنت در سریال مونیتورینگ، IP ماژول را نشان می دهد. وقتی این IP را در مرورگر خود وارد کنید. کلید هایی که ساخته اید را می بینید. با استفاده از دکمه ها می توانید LED ها را کنترل کنیم. برای دیدن نحوه ی آپلود برنامه مطالب قبل را بخوانید.
در ادامه فیلمی هم که آماده کرده ام را ببینید:
دیدگاه ها :