ESP8266 - WiFi Access Point
ESP8266 hoạt động ở chế độ Access Point
ESP8266 có khả năng cho phép các thiết bị khác (Station - STA) truy cập
vào và hoạt động như là 1 Access Point, có thể tự thiết lập 1 mạng WiFi
nội bộ, với khả năng khởi động DHCP Client và cung cấp được IP cho các
Client kết nối tới. Do giới hạn về RAM, nên số lượng tối đa các STA có
thể kết nối đến một ESP8266 hiện tại là 5.
Khởi tạo mạng
Đầu tiên bạn cần include <ESP8266WiFi.h>
, thư viện này chứa hàm
softAP
dùng để cấu hình Access Point mềm (soft AP) để khởi tạo một
mạng WiFi.
Một mạng WiFi đơn giản nhất chỉ cần cung cấp tên SSID và không mật khẩu
WiFi.softAP(ssid)
. Phức tạp hơn, bạn cung cấp mật khẩu cho mạng WiFi
WiFi.softAP(ssid, password)
, hoặc chi tiết
WiFi.softAP(ssid, password, channel, hidden)
khi cung cấp chính xác
kênh truyền (1..13), mặc định 1 và ẩn nó đi, không hiển thị ra khi
hidden = true
Nhớ rằng ssid
sử dụng chuỗi ký tự không quá 63, và mật khẩu (có thể
không cần) với tối thiểu 8 ký tự cho mạng WPA2-PSK
Hàm softAP
sẽ trả về true
nếu khởi tạo thành công mạng WiFi
WiFi.softAPConfig (local_ip, gateway, subnet)
dùng để cấu hình IP cho
Access Point
IPAddress local_IP(192,168,4,22);
IPAddress gateway(192,168,4,9);
IPAddress subnet(255,255,255,0);
WiFi.softAPConfig(local_IP, gateway, subnet)
WiFi.softAPgetStationNum()
sẽ trả về số lượng client đang kết nối tới
Access Point
Khởi tạo mạng WiFi sử dụng ESP8266
Với đoạn code này, bạn có thể tạo ra một mạng WiFi cục bộ có SSID là
AP-XXXXXX
và có thể dùng máy tính để kết nối trực tiếp vào với
password là password
#include <ESP8266WiFi.h>
const char *password = "password";
void setup() {
Serial.begin(115200);
Serial.print("Configuring access point...");
char ssid[64];
sprintf(ssid, "AP-%06X", ESP.getChipId());
WiFi.softAP(ssid, password);
IPAddress myIP = WiFi.softAPIP();
Serial.print("AP IP address: ");
Serial.println(myIP);
}
void loop() {
Serial.printf("Stations connected = %d\n", WiFi.softAPgetStationNum());
delay(3000);
}
Nạp chương trình cho board NodeMCU và xem kết quả hiển trị trên màn hình
Monitor. Lúc này, bạn có thể tìm thấy SSID do board NodeMCU phát ra bằng
bất kỳ thiết bị có thể kết nối Internet nào.
Latest comments (0)