آموزش نصب و راه اندازی PlatformIO IDE و برنامه نویسی ESP32

فهرست مطالب

مقدمه

پلتفرم IO، مشابه با Arduino IDE، یک محیط برنامه نویسی برای انواع میکروکنترلرها است. این پلتفرم کار برنامه نویسی را برای ما بسیار ساده تر می کند. ضمنا این محیط به صورت یک افزونه از نرم افزار VS Code قابل دسترسی می باشد.
یکی از مزیت های مهم این پلتفرم نسبت به Arduino IDE: انتخاب پورت مناسب به صورت اتوماتیک.
همچنین Platform-IO IDE با حدس زدن کدی که در حال نوشتن آن هستید پیشنهادهای مختلفی برای تکمیل و اصلاح آن به شما ارائه دهد. بخاطر همین ویژگی، از اشتباه نوشتن دستوراتتان در Arduino IDE بخاطر کوچک و یا بزرگ بودن حروف خلاص می شوید!
از دیگر ویژگی های جذاب پلتفرم IO: هایلایت ارور قبل از کامپایل کد، و باز کردن تب های مختلف به صورت همزمان .

Platform-IO IDE

نصب PlatformIO IDE در ویندوز

گام اول: نصب نرم افزار VS Code

در ابتدا این لینک را باز کرده و روی گزینه ی Download for Windows کلیک کنید. سپس نرم افزار Vs Code را دانلود کنید.

گام دوم: نصب Python

برای پروگرام کردن بردهای ESP32 و ESP8266 باید پایتون ورژن 3.5 و یا بالاتر را بر روی سیستم خود نصب کنید. اگر پایتون را بر روی سیستم خود ندارید، وارد این لینک شده و مانند تصویر زیر، آخرین نسخه را دانلود و نصب کنید.

Installing Python (1)

پس از دانلود، با باز کردن فایل دانلود شده، صفحه زیر نمایش داده میشود. توجه داشته باشید که هنگام نصب، تیک add python.exe to path را بزنید.

Installing Python (2)

گام سوم: نصب Platform IO

با توجه به مراحل زیر، افزونه PlatformIO IDE را نصب کنید.

Installing Platform-IO IDE (1)

در این زمان آیکن Platform-IO IDE باید در نوار سمت چپ ظاهر شود. همچنین در پایین صفحه، آیکن خانه نیز پدیدار می شود که شما را به صفحه ی اصلی Platform-IO IDE هدایت میکند.

Installing Platform-IO IDE (2)

اکنون پلتفرم IO به طور کامل بر روی سیستم شما نصب شده است. پیشنهاد می شود که در این مرحله یک بار نرم افزار VS Code را باز و بسته شود.

آشنایی با محیط کاربری PlatformIO IDE

User Interface (1)

Explorer: دسترسی به پوشه
در این بخش می توان به تمامی فایل های پوشه ی باز شده در پلتفرم IO، و همچنین مواردی مثل اضافه کردن فایل و یا تغییر نام فایل و…. دسترسی داشت.
Search: جستجو داخل فایل
می توانید کلمه ای را داخل فایل های پوشه جستجو کرده و آن را با کلمه ای دیگر جایگزین کنید.
Source Control: مدیریت کدهای مرکزی
با دانلود نرم افزار git از این بخش می توانید کنترل بیشتری روی کد خود داشته و آن را بهتر مدیریت کنید. مهم ترین خاصیت source control، نشان دادن و مدیریت تغییراتی است که روی کد شما اعمال شده، در مقایسه با کد پایه ای که توسط شما ایجاد شده.
Run and Debug: اجرا و عیب یابی
می توانید کد خود را قبل از آپلود، اجرا و عیب یابی کنید.
Extension: افزونه ها
افزونه های بسیار زیادی در Vs code وجود دارد که می توانند پروسۀ برنامه نویسی را راحت تر کنند. برای اضافه کردن این افزونه ها باید وارد Extension شده و افزونه موردنظر را سرچ و دانلود کنید.
PlatformIO: مدیریت پلتفرم IO
یکی از مهم ترین بخش های هر پروژه ای است. از طریق پلتفرم IO راه اندازی شده و به طور کلی از دو قسمت تشکیل می شود: (1) Projects Task: از طریق آن میتوانید تغییرات زیادی مثل Erase Flash را انجام دهید و یا بر روی Flash میکروکنترلر خودتان فایلی را آپلود کنید؛ و (2) Quick Access: با تغییرات و مدیریت خود پلتفرم IO و تمامی پروژه ها در ارتباط است.
نوار سمت چپ (پایین صفحه):

User Interface (2)

کاربرد هر آیکون به ترتیب از سمت چپ به راست:
Platform-IO Home: صفحه ی اصلی پلتفرم IO
Build: ساختن / کامپایل کد
Upload: آپلود کد
Clean: پاک کردن ( فایل کامپایل)
Test: تست پیکربندی
Serial Monitor: نمایشگر سریال دیتا
New Terminal: ترمینال جدید

برنامه نویسی ESP32 در PlatformIO

ابتدا از صفحه ی اصلی پلتفرم، روی New Project کلیک کنید.

User Interface (3)

نام، برد و فریم وُرک موردنظر خودتان را در پنجرۀ پایین انتخاب کنید.

User Interface (4)

پس از بازساخت پروژه، می توانید از قسمت EXPLORER به فایل های پروژه دسترسی داشته باشید.

User Interface (5)
User Interface (6)

داخل پوشه ی src میتوانید به فایل های کد خود دسترسی داشته باشید.

User Interface (7)

اکنون می خواهیم چشمک زدن LED داخلی ESP32 را تست کنیم. کد زیر را بر روی برد ESP32 آپلود کنید. برای بردهای دیگر، define LED را تغییر دهید و یا از LED جدا استفاده کنید.

/*
 modified on Des 13, 2020
 Modified by AminDamirchi from https://github.com/adafruit/Adafruit_SSD1306
 
Home
*/ /********* Rui Santos Complete project details at https://RandomNerdTutorials.com/vs-code-platformio-ide-esp32-esp8266-arduino/ *********/ #include <Arduino.h> #define LED 2 void setup() { // put your setup code here to run once: Serial.begin(115200); pinMode(LED, OUTPUT); } void loop() { // put your main code here to run repeatedly: digitalWrite(LED, HIGH); // Turn on the LED Serial.println("LED is on"); // Print message to Serial Monitor delay(1000); // Delay for 1 second digitalWrite(LED, LOW); // Turn off the LED Serial.println("LED is off"); // Print message to Serial Monitor delay(1000); // Delay for 1 second }

برای آپلود، بر روی دکمه ی نمایش داده شده در تصویر زیر کلیک کنید.

User Interface (8)

پس از آپلود، منتظر پیام Success در انتهای ترمینال باشید.

User Interface (9)

اکنون باید LED داخلی برد ESP32 هر ثانیه چشمک بزند.

ESP32 Blinking

می توانید وضعیت LED را در سریال مانیتور مشاهده کنید.

ESP32 LED Output

آموزش های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.