TechPartner

← Quay lại Blog
Khóa lập trình Arduino ESP32 cơ bản — IoT từ Blink đến SmartNode · Phần 5 / 8

Lập trình ESP32 (5/8): WiFi Station — kết nối & reconnect

WiFi.begin, lưu SSID/password an toàn, reconnect không block loop, in IP local.

· 1 min read

Khóa lập trình Arduino ESP32 cơ bản — IoT từ Blink đến SmartNode · Phần 5/8
  1. 1Cài đặt & Blink
  2. 2GPIO digital
  3. 3PWM & servo
  4. 4ADC & cảm biến
  5. 5WiFi Station
  6. 6HTTP client
  7. 7Web server
  8. 8Capstone SmartNode

Phần 5/8 (~40 phút) · Phần 4 · Phần 6 — HTTP

#include <WiFi.h>

const char* WIFI_SSID = "YOUR_SSID";
const char* WIFI_PASS = "YOUR_PASSWORD";

void connectWiFi() {
  WiFi.mode(WIFI_STA);
  WiFi.begin(WIFI_SSID, WIFI_PASS);
  Serial.print("Connecting");
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println();
  Serial.println(WiFi.localIP());
}

unsigned long lastCheck = 0;

void setup() {
  Serial.begin(115200);
  connectWiFi();
}

void loop() {
  if (millis() - lastCheck > 10000) {
    lastCheck = millis();
    if (WiFi.status() != WL_CONNECTED) {
      Serial.println("Reconnecting...");
      WiFi.disconnect();
      WiFi.begin(WIFI_SSID, WIFI_PASS);
    }
  }
  // phần khác của SmartNode chạy ở đây — tránh delay dài
}

Mẹo: Dùng WiFi 2.4 GHz — ESP32 không hỗ trợ 5 GHz-only AP.

Điều hướng seri: ← Phần 4 · Phần 6 →

Câu hỏi thường gặp

Có nên hard-code mật WiFi trong sketch?

Học tập: tạm OK. Sản phẩm: dùng WiFiManager, NVS, hoặc provisioning — không commit password lên Git.

Startup của bạn cần tech partner?

Trao đổi miễn phí về MVP, timeline và mô hình chia lợi nhuận phù hợp.