مقدمه
امروزه بردهای ESP32 به علت ویژگیها و قابلیتهای جذاب زیادی که ارائه میدهند و در عین حال قیمت پایینشان، بسیار مورد توجه واقع شدهاند. این میکروکنترلر همچنین قابلیت برنامهنویسی بسیار سادهای دارد. این برنامهنویسی میتواند در بسیاری از محیطهای برنامهنویسی گوناگون مانند محیط برنامهنویسی Lua، Arduino IDE، میکروپایتون، ESP-IDF و … انجام شود. در بین این محیطها، نرمافزار Arduino IDE به علت منبع باز (Open Source) و شناخته شده بودن، گزینه مناسبی برای شروع کار با بردهای ESP32 است. در این آموزش نحوه نصب برد ESP32 بر روی نرمافزار Arduino IDE را یاد میگیرید.
آنچه در این آموزش یاد می گیرید
- مراحل کامل نصب برد ESP32 در نرمافزار Arduino IDE
- راهاندازی وایفای برد ESP32 برای اسکن وایفایهای موجود
آنچه برای نصب برد ESP32 نیاز دارید
برای آن که بتوانید از این آموزش استفاده کنید، لازم است که نرمافزار Arduino IDE را بر روی سیستم خود نصب کرده باشید. ترجیحا نرمافزار را آپدیت نگه دارید. آخرین ورژن Arduino IDE را میتوانید از لینک زیر دانلود کنید.
https://www.arduino.cc/en/software/
اگر برای نصب نرمافزار Arduino IDE به راهنمایی نیاز دارید، میتوانید به لینک زیر مراجعه کنید.
آموزش نصب نرم افزار آردوینو IDE روی ویندوز و مک
نصب برد ESP32 بر روی Arduino IDE
برای نصب برد ESP32 بر روی Arduino IDE به ترتیب زیر عمل کنید.
گام اول: آمادهسازی نرمافزار Arduino IDE
نرمافزار Arduino IDE را باز کنید. به قسمت File -> Preferences بروید.
گام دوم: اضافه کردن لینک ESP32
در قسمت Additional Boards Manager URLs لینک “https://espressif.github.io/arduino-esp32/package_esp32_index.json” را وارد کنید. در ادامه بر روی گزینه OK کلیک کنید.
توجه
اگر از قبل لینکی در این قسمت وجود دارد، میتوانید به راحتی با یک کاما این دو لینک را جدا کنید.
گام سوم: باز کردن قسمت بردهای برنامه Arduino IDE
در Arduino IDE، قسمت Tools -> Board -> Boards manager… را باز کنید.
گام چهارم: نصب برد ESP32
کلمه ESP32 را تایپ کنید. در ادامه esp32 by Espressif Systems را با کلیک روی گزینه Install آن نصب کنید.
با کلیک روی گزینه Install نرمافزار شروع به دانلود و نصب برد ESP32 میکند. تصویری مشابه تصویر زیر را مشاهده خواهید کرد.
منتظر بمانید تا نصب کامل شود. با کامل شدن نصب تصویری مشابه تصویر زیر را خواهید دید.
موفق شدید!
شما برد ESP32 را با موفقیت نصب کردید.
صحت سنجیِ نصب: راهاندازی وایفای برد ESP32
بردی که در اینجا استفاده کردهایم، برد NodeMCU – ESP32S Edition است. در زیر میتوانید لینک قطعات و نرمافزار مورد نیاز را مشاهده کنید.
قطعات مورد نیاز
نرم افزار های مورد نیاز
اگر از بردهای مبتنی بر ESP32 دیگر نیز استفاده میکنید، میتوانید از همین کد استفاده کنید. تنها لازم است که در Arduino IDE برد مناسب خود را انتخاب نمایید.
کد
ابتدا دقت کنید که در نرمافزار Ardunio IDE، نوع برد و پورت را به درستی انتخاب کنید.
سپس کد زیر را بر روی برد ESP32 خود آپلود کنید. این کد از مثالهای خود آردوینو است و میتوانید آن را از طریق File -> Examples -> Wifi -> WifiScan بیابید.
/*
* This sketch demonstrates how to scan WiFi networks.
* The API is almost the same as with the WiFi Shield library,
* the most obvious difference being the different file you need to include:
*/
#include "WiFi.h"
void setup()
{
Serial.begin(115200);
// Set WiFi to station mode and disconnect from an AP if it was previously connected
WiFi.mode(WIFI_STA);
WiFi.disconnect();
delay(100);
Serial.println("Setup done");
}
void loop()
{
Serial.println("scan start");
// WiFi.scanNetworks will return the number of networks found
int n = WiFi.scanNetworks();
Serial.println("scan done");
if (n == 0) {
Serial.println("no networks found");
} else {
Serial.print(n);
Serial.println(" networks found");
for (int i = 0; i < n; ++i) {
// Print SSID and RSSI for each network found
Serial.print(i + 1);
Serial.print(": ");
Serial.print(WiFi.SSID(i));
Serial.print(" (");
Serial.print(WiFi.RSSI(i));
Serial.print(")");
Serial.println((WiFi.encryptionType(i) == WIFI_AUTH_OPEN)?" ":"*");
delay(10);
}
}
Serial.println("");
// Wait a bit before scanning again
delay(5000);
}
پس از آپلود موفقآمیز کد به روی برد، تصویری مشابه تصویر زیر در نرمافزار Arduino IDE مشاهده خواهید نمود:
همانطور که گفته شد، کد بالا شبکههای وایفای را اسکن کرده و لیست شبکههای موجود را در Serial Monitor نمایش میدهد.
در نرمافزار Arduino IDE، پنجره Serial Monitor را باز کنید. خروجی کد به شکل زیر است.
یک گام جلوتر
اکنون که برد ESP32 را روی آردوینو نصب کرده و با موفقیت آن را برای اسکن وایفایهای موجود برنامهریزی کردید، این بار سعی کنید آن را به عنوان یک منبع وایفای (مود Access Point) برنامهریزی کرده و با گوشی خود به آن متصل شوید.
Comments (4)
با سلام. در هنگام نصب در قسمت board manager این ارور رو آورد. چه کنم؟ هرچه قدر هم تلاش میکنم باز همینه.
CRC doesn’t match, file is corrupted. It may be a temporary problem, please retry later.
java.lang.RuntimeException: java.lang.Exception: CRC doesn’t match, file is corrupted. It may be a temporary problem, please retry later.
at cc.arduino.contributions.packages.ui.ContributionManagerUI.lambda$onInstallPressed$2(ContributionManagerUI.java:179)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.Exception: CRC doesn’t match, file is corrupted. It may be a temporary problem, please retry later.
at cc.arduino.contributions.DownloadableContributionsDownloader.download(DownloadableContributionsDownloader.java:101)
at cc.arduino.contributions.DownloadableContributionsDownloader.download(DownloadableContributionsDownloader.java:56)
at cc.arduino.contributions.packages.ContributionInstaller.install(ContributionInstaller.java:100)
at cc.arduino.contributions.packages.ui.ContributionManagerUI.lambda$onInstallPressed$2(ContributionManagerUI.java:172)
… 1 more
با سلام
لینک json فایل که داخل تنظیمات Arduino IDE اضافه میکنید تغییر کرده است.
از این لینک استفاده کنید.
https://espressif.github.io/arduino-esp32/package_esp32_index.json
آموزش نیز اصلاح میشود.
Failed to install platform: ‘esp32:esp32:2.0.14’.
Error: 2 UNKNOWN: Get “http://downloads.arduino.cc/tools/dfu-util-0.11-arduino5-windows_386.tar.gz”: read tcp 192.168.1.117:58457->104.18.10.21:80: wsarecv: An existing connection was forcibly closed by the remote host.
با سلام
از VPN برای نصب استفاده کنید.