متوسط⏱ 15 دقیقه مطالعه

یکی از بزرگ‌ترین مزیت‌های ESP32، وجود رادیوی Wi-Fi داخلی است. کتابخانهٔ استاندارد WiFi.h در هستهٔ Arduino-ESP32 در چند خط کد امکان اتصال به یک شبکهٔ بی‌سیم را می‌دهد.

معماری ساده یک پروژه اینترنت اشیا

اتصال به شبکهٔ Wi-Fi (حالت Station)

CPP
#include <WiFi.h>

const char* ssid = "NAME_OF_YOUR_WIFI";
const char* password = "YOUR_PASSWORD";

void setup() {
  Serial.begin(115200);
  WiFi.begin(ssid, password);

  while (WiFi.status() != WL_CONNECTED) {
    delay(1000);
    Serial.println("در حال اتصال...");
  }

  Serial.print("متصل شد! آدرس IP: ");
  Serial.println(WiFi.localIP());
}

void loop() {}
ℹ️ اطلاعات

در شبیه‌سازی Wokwi برای اتصال به اینترنت از یک شبکهٔ مجازی به‌نام Wokwi-GUEST بدون رمز عبور استفاده می‌شود (رمز عبور را یک رشتهٔ خالی "" بگذارید).

حالت Access Point (نقطهٔ دسترسی)

ESP32 می‌تواند به‌جای اتصال به یک روتر، خودش یک شبکهٔ Wi-Fi مستقل بسازد؛ این حالت برای تنظیمات اولیهٔ یک دستگاه بسیار کاربردی است.

CPP
#include <WiFi.h>

void setup() {
  Serial.begin(115200);
  WiFi.softAP("ESP32-Setup", "12345678");

  Serial.print("نقطه دسترسی فعال شد، آدرس IP: ");
  Serial.println(WiFi.softAPIP());
}

void loop() {}
شبیه‌سازی زندهٔ اتصال Wi-Fi با WiFi.begin و نمایش آدرس IP روی OLED — همان الگوی WiFi.begin(ssid, password) که در کد بالا نوشتید باز کردن در Wokwi ↗
در حال بارگذاری شبیه‌ساز… (ممکن است چند ثانیه طول بکشد)

این یک شبیه‌سازی واقعی و قابل اجراست؛ روی دکمه پخش (▶) در Wokwi بزنید تا کد روی برد مجازی ESP32 اجرا شود. اگر جعبهٔ بالا بیش از حد سیاه/خالی ماند، صفحه را رفرش کنید یا از دکمهٔ «باز کردن در Wokwi» بالا استفاده کنید.

🧩

برای اجرای کد حالت Access Point بالا (WiFi.softAP)، از همین شبیه‌سازی به‌عنوان نقطهٔ شروع استفاده کنید یا یک پروژهٔ خالی جدید Arduino/ESP32 در Wokwi بسازید و به شبکهٔ مجازی Wokwi-GUEST متصل شوید.

ساخت پروژهٔ خالی Arduino/ESP32 در Wokwi ↗
🛠️ کارگاه عملی

کارگاه عملی: کد بالا را اجرا کنید و در سریال مانیتور آدرس IP دریافتی را ببینید.

❓ برای اتصال ESP32 به یک روتر موجود، از کدام تابع استفاده می‌شود؟
طراحی و توسعه: امین شیخ نجدیglcd.ir | نسخهٔ افزونه: 1.21.0