
قسمت دوم آموزش PlatformIO راهنمای نصب و اجرای اولین کد در PlatformIO برای ESP8266
آموزش ایجاد پروژه روش گرافیکی و خط فرمان در PlatformIO
در قسمت قبل با این موضوع آشنا شدیم که چرا یک مهندس برق و الکترونیک باید PlatformIO را بشناسد و چه مزایایی نسبت به Arduino IDE ارائه میدهد.
در این بخش، بهصورت عملی بررسی میکنیم که چگونه میتوان:
- یک پروژه جدید ایجاد کرد
- اولین برنامه را برای ESP8266 نوشت
- آن را کامپایل و روی برد آپلود کرد
- و خروجی سریال را مشاهده نمود
این آموزش بهگونهای نوشته شده است که اگر با Arduino IDE کار کرده باشید اما تجربهای با PlatformIO نداشته باشید، بتوانید بدون ابهام مسیر را طی کنید.
PlatformIO چگونه کار میکند؟
نکته مهمی که باید بدانید این است:
حتی زمانی که از VS Code استفاده میکنید، تمام عملیات در نهایت توسط ابزار خط فرمان
pioانجام میشود.
بنابراین در این مقاله دو روش را بررسی میکنیم:
- استفاده از VS Code (روش گرافیکی)
- استفاده مستقیم از CLI و دستور
pio
پیشنیازها
- نصب PlatformIO
- نصب Python (در صورت استفاده از CLI مستقل)
- در اختیار داشتن برد ESP8266 (مانند NodeMCU)
روش اول: ایجاد پروژه با VS Code (روش گرافیکی)
این روش برای شروع سادهتر و برای کاربران تازهکار مناسبتر است.
1️⃣ ایجاد پروژه جدید
- نرمافزار VS Code را اجرا کنید.
- از نوار کناری، آیکن PlatformIO (موشک) را انتخاب کنید.
- گزینه New Project را انتخاب نمایید.
در پنجره بازشده:
- Project Name: مثال
esp8266_test - Board:
NodeMCU 1.0 (ESP-12E Module) - Framework: Arduino
- Location: حالت پیشفرض
سپس روی Finish کلیک کنید.
2️⃣ ساختار پروژه
پس از ایجاد پروژه، ساختار زیر ساخته میشود:
|
1 2 3 4 5 6 7 |
esp8266_test/ ├── src/ │ └── main.cpp ├── include/ ├── lib/ └── platformio.ini |
دو فایل مهم:
src/main.cpp→ محل نوشتن برنامهplatformio.ini→ تنظیمات پروژه
3️⃣ نوشتن اولین برنامه
فایل main.cpp را باز کرده و کد زیر را قرار دهید:
|
1 2 3 4 5 6 7 8 9 10 11 |
#include <Arduino.h> void setup() { Serial.begin(115200); } void loop() { Serial.println("Hello ESP8266"); delay(1000); } |
4️⃣ کامپایل و آپلود
در نوار پایین VS Code:
- ✔ Build → کامپایل
- ➡ Upload → آپلود روی برد
- 🔌 Serial Monitor → مشاهده خروجی سریال
نکته مهم: این دکمهها در واقع دستورهای pio را اجرا میکنند.
روش دوم: کار با PlatformIO فقط از طریق خط فرمان (CLI)
این روش حرفهایتر است و در محیطهای بدون IDE، سرورها و سیستمهای اتوماسیون استفاده میشود.
کار با PlatformIO بدون VS Code
ساخت پروژه چشمکزن ESP8266 از طریق خط فرمان
1️⃣ نصب PlatformIO Core
در PowerShell یا CMD:
|
1 2 |
pip install -U platformio |
بررسی نصب:
|
1 2 |
pio --version |
2️⃣ ایجاد پروژه جدید
به پوشه موردنظر بروید:
|
1 2 |
cd projects |
سپس اجرا کنید:
|
1 2 |
pio project init --board nodemcuv2 --project-option "framework=arduino" |
برای مشاهده لیست بردهای ESP8266:
|
1 2 |
pio boards espressif8266 |
3️⃣ نوشتن برنامه Blink
در پوشه src فایل main.cpp را ایجاد کرده و کد زیر را قرار دهید:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
#include <Arduino.h> #define LED_PIN 2 // GPIO2 معادل D4 در NodeMCU void setup() { pinMode(LED_PIN, OUTPUT); } void loop() { digitalWrite(LED_PIN, HIGH); delay(500); digitalWrite(LED_PIN, LOW); delay(500); } |
4️⃣ بررسی فایل platformio.ini
|
1 2 3 4 5 6 |
[env:nodemcuv2] platform = espressif8266 board = nodemcuv2 framework = arduino monitor_speed = 115200 |
این فایل مشخص میکند:
- از چه پلتفرمی استفاده شود
- برد هدف چیست
- فریمورک برنامهنویسی کدام است
5️⃣ کامپایل پروژه
|
1 2 |
pio run |
در اولین اجرا، پکیجها دانلود میشوند.
6️⃣ آپلود روی برد
مشاهده پورتها:
|
1 2 |
pio device list |
آپلود:
|
1 2 |
pio run -t upload |
در صورت نیاز تعیین دستی پورت:
|
1 2 |
upload_port = COM5 |
7️⃣ مانیتور سریال
|
1 2 |
pio device monitor |
یا:
|
1 2 |
pio run -t monitor |
8️⃣ آپلود و مانیتور همزمان
|
1 2 |
pio run -t upload -t monitor |
9️⃣ مدیریت کتابخانهها
نصب مستقیم:
|
1 2 |
pio lib install "WiFiManager" |
یا تعریف در platformio.ini:
|
1 2 3 |
lib_deps = tzapu/WiFiManager |
🔟 پاکسازی پروژه
|
1 2 |
pio run -t clean |
مقایسه دو روش
| ویژگی | VS Code | CLI |
|---|---|---|
| سادگی شروع | بالا | متوسط |
| سرعت کار | بالا | بسیار بالا |
| مناسب اتوماسیون | محدود | بسیار مناسب |
| نیاز به IDE | دارد | ندارد |
جمعبندی
PlatformIO تنها یک افزونه برای VS Code نیست؛ بلکه یک ابزار مهندسی قدرتمند برای توسعه سیستمهای امبدد است.
درک صحیح دستور pio باعث میشود:
- وابستگی به IDE کاهش یابد
- پروژهها ساختاریافتهتر شوند
- مدیریت کتابخانهها دقیقتر انجام شود
- مسیر مهاجرت به پروژههای بزرگتر (ESP32، STM32 و …) هموار گردد
در این مقاله، اجرای اولین پروژه برای ESP8266 هم به روش گرافیکی و هم از طریق خط فرمان بررسی شد. اکنون شما میتوانید بسته به نیاز پروژه، هر یک از این روشها را انتخاب کنید.






