Ở bài trước chúng ta đã dùng board ESP8266 làm một Station. Trong bài này chúng ta sẽ dùng ESP8266 làm một Access Point để cho phép các thiết bị khác như điện thoại thông minh hoặc laptop kết nối với nó.
Khai báo các thư viện cần thiết:
#include <ESP8266WiFi.h> // Thư viện dùng để kết nối WiFi của ESP8266
Để thiết lập Access Point, ta sẽ dùng hàm softAP trong thư viện ESP8266WiFi:
WiFi.softAP(ssid, password)
Hàm để lấy thông tin IP của Access Point sau khi thiết lập thành công: WiFi.softAPIP()
Bạn dùng Arduino IDE để nạp chương trình sau:
Chú ý: Đối với Node WiFi bạn nhớ chọn board là NodeMCU 1.0 (ESP-12E Module) trên menu Arduino IDE > Tools > Board
#include <ESP8266WiFi.h> // Thư viện dùng để kết nối WiFi của ESP8266 const char *ssid = "Blocky AP"; // Tên của mạng WiFi mà bạn muốn đặt const char *password = "12345"; // Mật khẩu của mạng WiFi. Bỏ trống nếu bạn không muốn đặt mật khẩu. void setup() { Serial.begin(115200); // Khởi tạo kết nối Serial để truyền dữ liệu đến máy tính với tốc độ baud là 115200 WiFi.softAP(ssid, password); // Khởi tạo chức năng Access Point Serial.print("Access Point: "); Serial.print(ssid); Serial.println(" started"); Serial.print("IP address: "); Serial.println(WiFi.softAPIP()); // Gởi địa chỉ IP đến máy tinh } void loop() {}
Sau khi nạp code thành công, bạn mở Serial Monitor từ menu Arduino IDE > Tool. Sau đó chọn tốc độ baud là 115200 như đoạn code trong phần setup ở trên
Nhấn nút Reset trên board Node WiFi, Serial Monitor thông báo kết quả khởi tạo thành công. Sau đó bạn thử dùng điện thoại xem có thể kết nối đến Access Point được không nhé.
Chú ý: Sau khi đã kết nối điện thoại đến Access Point mà bạn đã thiết lập thành công, điện thoại của bạn sẽ không try cập được internet vì bản thân ESP không được kết nối với internet. Tuy nhiên nếu bạn kết nối một thiết bị khác vào mạng này thì chúng có thể giao tiếp với nhau mà không gặp vấn đề gì, bởi vì chúng nằm trong cùng một mạng. Đây chính là cách mà chúng ta có thể thiết lập một mạng nội bộ (trong nhà chẳng hạn) mà các thiết bị có thể giao tiếp với nhau không cần internet.