• HOME
  • DỰ ÁN & MẠCH ĐIỆN
    • Lập trình
      • ARDUINO PROJECT
      • ESP8266 PROJECT
      • ESP32 PROJECT
      • RASPBERRY PI PROJECT
      • Vi điều khiển
    • Điện tử ứng dụng
      • Audio / Amplifiers
      • Nguồn điện
      • Pin sạc/Acquy và mạch sạc
      • Biến đổi AC và DC
      • Robotic
      • Cảm biến
      • LED
      • LCD
      • Động cơ bước
      • Mạch linh tinh
      • Test & Measurement
      • RF – FM
    • Nixie Clock
    • HOME AUTOMATION
    • Dân dụng
    • Công nghiệp
  • KIẾN THỨC CĂN BẢN
    • Điện tử cơ bản
    • Điện tử số
    • PCB
    • Nixie Tube
    • Raspberry Pi
    • Vi điều khiển
    • Arduino
    • IN 3D
  • DOWNLOAD
    • Phần mềm điện tử
    • Giáo trình
      • Giáo trình Điện – Điện tử
      • Giáo trình Tự Động Hóa
      • Giáo trình Viễn thông
    • Đề tài
      • Đề tài – Điện – Điện Tử
      • Đề tài – Tự Động Hóa
      • Đề tài – Viễn thông
    • Điện tử ứng dụng
    • Tài liệu nước ngoài
    • Hướng dẫn, sửa chữa
    • Sơ đồ, nguyên lý thiết bị
    • Tiêu chuẩn – Đo lường – Thử nghiệm
    • Datasheet
  • LIÊN HỆ
  • SẢN PHẨM
Mạch Điện Lý Thú

Mạch Điện Lý Thú

Sơ đồ nguyên lý, PCB, đồ án, tài liệu, DIY

Trang chủ » DỰ ÁN & MẠCH ĐIỆN » Lập trình » ESP8266 PROJECT » Điều khiển LED bằng WebServer sử dụng NodeMCU ESP8266

Điều khiển LED bằng WebServer sử dụng NodeMCU ESP8266

07/05/2026 by admin Để lại bình luận

Đã được đăng vào 19/08/2020 @ 16:01

Điều khiển LED bằng WebServer sử dụng NodeMCU ESP8266

Mục lục hiện
Điều khiển LED bằng WebServer sử dụng NodeMCU ESP8266
Nạp code và kiểm tra kết nối Wifi
Sơ đồ nguyên lý
Linh kiện cần thiết cho dự án
Code

Trong nội dung bài viết hôm nay mình sẽ chia sẽ cho các bạn các tạo một bảng điều khiển trên Webpage sử dụng NodeMCU ESP8266.

Chúng ta bắt đầu nhé…

Nạp code và kiểm tra kết nối Wifi

Bước đầu tiên chúng ta cần nạp code vào NodeMCU ESP8266 và kiểm tra xem đã kết nối được với Wifi chưa.

Sau khi đã kết nối thành công sẽ xuất hiện địa chỉ IP của Wifi, các bạn copy địa chỉ IP này paste trên một trình duyệt bất kỳ để có thể điều khiển Bật/Tắt Led nhé.

Đọc thêm:

  • Hướng dẫn cài đặt ESP8266 và kết nối với Blynk
  • Hệ thống điều khiển thiết bị nhà thông minh sử dụng NodeMCU ESP8266 và App Blynk

Đây là phần giao diện trên WebServer.

Dữ liệu trả về Serial khi chúng ta bật tắt trên Website.

Sơ đồ nguyên lý

Linh kiện cần thiết cho dự án

Tên linh kiện Số lượng
NodeMCU ESP8266 1
Dây cắm 1
Breadboard 1
LED 1

Code

#include <ESP8266WiFi.h>

const char* ssid = "Phamson";
const char* password = "phamtheson";

int LED = 16; // GPIO16 (D0)
WiFiServer server(80);

void setup(){
  Serial.begin(115200);
  pinMode(LED, OUTPUT);
  digitalWrite(LED, HIGH);
  Serial.print("Connecting to the Newtork");
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED)
  {
    delay(500);
    Serial.print(".");
  }
  Serial.println("WiFi connected"); 
  server.begin();
  Serial.println("Server started");
  Serial.print("IP Address of network: "); // will IP address on Serial Monitor
  Serial.println(WiFi.localIP());
  Serial.print("Copy and paste the following URL: https://");
  Serial.print(WiFi.localIP());
  Serial.println("/");
}

void loop(){
  WiFiClient client = server.available();
  if (!client){
    return;}
    
  Serial.println("Waiting for new client");
  while(!client.available())
  {
    delay(1);
  }
  String request = client.readStringUntil('\r');
  Serial.println(request);
  client.flush();
  
  int value = HIGH;
  if(request.indexOf("/LED=ON") != -1){
    
    digitalWrite(LED, LOW); // Turn LED ON
    value = LOW;
  }

  if(request.indexOf("/LED=OFF") != -1){

    digitalWrite(LED, HIGH); // Turn LED OFF
    value = HIGH;
  } 
  
//*------------------HTML Page Code---------------------*//

  client.println("HTTP/1.1 200 OK"); //
  client.println("Content-Type: text/html");
  client.println("");
  client.println("<!DOCTYPE HTML>");
  client.println("<html>");
  client.print(" CONTROL LED: ");
  if(value == HIGH){
    client.print("OFF");
  }
  else
  {
    client.print("ON");
  }
  client.println("<br><br>");
  client.println("<a href=\"/LED=ON\"\"><button>ON</button></a>");
  client.println("<a href=\"/LED=OFF\"\"><button>OFF</button></a><br />");
  client.println("</html>");
  
  delay(1);
  Serial.println("Client disonnected");
  Serial.println("");
}

Nguồn: arduinokit.vn

Đang tải đánh giá...
  • Facebook
  • Twitter (X)
  • LinkedIn
  • Pinterest
  • Tumblr
  • Zalo

Bài viết liên quan

Game Tetris sử dụng LED matrix 8×16 và 8051
Game Tetris sử dụng LED matrix 8×16 và 8051
Đèn tự động sáng khi trời tối
Đèn tự động sáng khi trời tối
Điều khiển thiết bị bằng giọng nói thông qua Google Assitant sử dụng ESP8266, Adafruit, IFTTT
Điều khiển thiết bị bằng giọng nói thông qua Google Assitant sử dụng ESP8266, Adafruit, IFTTT

Thuộc chủ đề:ESP8266 PROJECT Tag với:esp8266, led, nodemcu, webserver

Bài viết trước « Game Tetris sử dụng LED matrix 8×16 và 8051
Bài viết sau Khác biệt giữa linh kiện điện tử chủ động và bị động »

Reader Interactions

Để lại một bình luận Hủy

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Sidebar chính

Zalo hỏi đáp 24/7

Theo dõi qua mạng xã hội

  • Facebook

Bạn đang tìm gì?

Bài viết mới nhất

Xuất file Gerber từ phần mềm thiết kế mạch in Eagle

Xuất file Gerber từ phần mềm thiết kế mạch in Eagle

30/05/2026

Tài liệu 8051 - Đồ án vi điều khiển 8051

Tài liệu 8051 – Đồ án vi điều khiển 8051

30/05/2026

Mạch đuổi chuột, mạch đuổi gián, đuổi muỗi

Mạch đuổi chuột, mạch đuổi gián, đuổi muỗi

29/05/2026

Truyền điện không dây V1

Truyền điện không dây V2

29/05/2026

Truyền điện không dây V1

Truyền điện không dây V1

29/05/2026

Danh mục

  • DỰ ÁN & MẠCH ĐIỆN (241)
    • Công nghiệp (16)
    • Dân dụng (29)
    • Điện tử ứng dụng (178)
      • Audio / Amplifiers (34)
      • Biến đổi AC và DC (24)
      • Cảm biến (40)
      • Động cơ bước (5)
      • Kiểm thử và đo đạc (23)
      • LCD (15)
      • LED (20)
      • Mạch linh tinh (27)
      • Nguồn điện (42)
      • Pin sạc/Acquy và mạch sạc (24)
      • RF – FM (5)
      • Robotic (2)
    • HOME AUTOMATION (23)
    • Lập trình (82)
      • ARDUINO PROJECT (39)
      • ESP32 PROJECT (6)
      • ESP8266 PROJECT (17)
      • RASPBERRY PI PROJECT (9)
      • Vi điều khiển (24)
    • Nixie Clock (3)
  • Kiến thức căn bản (168)
    • Arduino (36)
    • Điện tử cơ bản (77)
    • Điện tử số (9)
    • IN 3D (9)
    • Nixie Tube (13)
    • PCB (16)
    • Raspberry Pi (10)
    • Vi điều khiển (16)

Footer

Bài viết mới nhất

  • Xuất file Gerber từ phần mềm thiết kế mạch in Eagle
  • Tài liệu 8051 – Đồ án vi điều khiển 8051
  • Mạch đuổi chuột, mạch đuổi gián, đuổi muỗi
  • Truyền điện không dây V2
  • Truyền điện không dây V1
  • Chống trộm bằng tia Laser

Bình luận mới nhất

  • sodium trong Thư viện Altium – Altium Library.
  • admin trong Kỹ thuật truyền sóng RF 433Mhz và 315Mhz
  • Minh Hoàng trong Kỹ thuật truyền sóng RF 433Mhz và 315Mhz
  • Hè trong IC 4017 và ứng dụng 555 với 4017

Tìm kiếm

Tất cả nội dung trên website chỉ dùng để tham khảo. Chúng tôi không chịu trách nhiệm về thông tin thành viên đăng tải lên website và xóa bài viết khi có vi phạm bản quyền tác giả.