پوستر آموزش ESP32

شروع کار با ESP32

پوستر درونی آموزش ESP32

مقدمه

سلام، برای وارد شدن به دنیای میکروکنترلرها و سیستم های هوشمند آردوینو واقعا گزینه خوبیه، با آردوینو به راحتی میتونید خیلی از سنسورها، نمایشگرها و انواع موتور هارو راه بندازید و سیستم های پیشرفته طراحی کنید، اما با پیشرفت تکنولوژی حوزه جدیدی بنام IoT یا اینترنت اشیا که البته بهتره بگیم اینترنت چیزها، مطرح شده که روز به روز داره استفاده ازش بیشتر میشه، برای اینکه ماهم ازین داستان عقب نمونیم باید از پلتفورمایی استفاده کنیم که قابلیت پیاده سازی پروژه های IoT رو داشته باشن، این آموزش به معرفی یکی از بهترین این پلتفروم ها یعنی ESP32 میپردازه، پس بریم باهم داشته باشیم: شروع کار با ESP32 .

آنچه در این آموزش یاد می گیرید
  • ESP32 چیست؟
  • مشخصات ESP32
  • روش های مختف برنامه نویسی
  • بوردهای توسعه ESP32
  • نصب پلتفورم ESP روی آردوینو
  • پروژه نمونه

ESP32 چیست؟

برای شروع کار با ESP32 لازمه یکم راجع بهش بدونیم. خب، ESP32 یک میکروکنترلر یا SoC تولید شرکت Espressif Systems هست که نوع پیشرفته تر از مدل ESP8266 همین شرکته. این میکروکنترلر از پردازنده مرکزی Tensilica’s 32-bit Xtensa LX6 بهمراه سیستم WiFi و بوتوث داخلی، RAM، ADC، I2C و … بهره میبره.

معماری میکروکنترلر ESP32

مورد دیگه ای که باید در مورد ESP32 بدونید اینه که این میکروکنترلر با تکنولوژی TSMC 40 نانو متر ساخته شده و از نظر مصرف انرژی خیلی خیلی بهینس و برای پروژه های پورتابل مثل ساعت های هوشمند، گجت های پوشیدنی و … گزینه فوق العاده ایه.

مشخصات و ویژگی های ESP32

ESP32 نسبت به ESP8266 امکانات خیلی بیشتری داره که میتونید مهم ترین این امکانات و ویژگی ها رو مشاهده کنید:

  • پردازنده 2 هسته ای ( به استثنا مدل ESP32-SOWD که پردازنده تک هسته ای داره)
  • فرکانس پردازش تا 240 مگاهرتز
  • 448 کیلوبایت حافظه ROM(همون حافظه ای که کدهای برنامه نویسی داخلش میشنه، مقایسه کنید با 32 کیلوبایت حافظه ATMEGA328!)
  • 520 کیلوبایت حافظه SRAM
  • 16 کیلوبایت حافظه SRAM برای واحد RTC(دو قسمت 8 کیلوبایتی)
  • پشتیبانی از اتصال وایفای 802.11 b/g/n با سرعت بیشنیه 150 Mbps
  • پشتیبانی از بلوتوث نسخه 2
  • پشتبانی از بلوتوث کم انرژی BLE
  • 34 پایه قابل برنامه ریزی GPIO
  • تا 18 کانال ADC 12 بیتی
  • تا 2 کانال DAC 8 بیتی
  • تا 4 واحد SPI، 2 واحد I2C، 2 واحد I2S و 3 واحد UART
  • پشتیبانی از اترنت برای اتصال LAN
  • پشیبانی از SDIO
  • 1 کانال اختصاصی PWM برای موتور و تا 16 کانال PWM دیگر

واقعا این همه امکانات و ویژگی های حیرت آور در مقایسه با قیمت این میکرو نشون میده یکی از بهترین گزینه های برای پروژه های مختلفه.

روش های مختلف برنامه نویسی ESP32

یک سخت افزار حرفه ای و خوب مثل ESP32 خودشو محدود به یک روش برنامه نویسی یا یک کامپایلر نمیکنه. محیط های رایج برنامه نویسی ESP32 شامل موارد زیر میشه:

  • Arduino IDE(اگه با Arduino IDE آشنا نیستید پیشنهاد میکنم این مطلب رو بخونید)
  • Platform IO
  • MicroPython
  • Espressif IDF
  • JavaScript
  • LUA

برای شروع کار با ESP32 ازونجایی که پلتفورم Arduino IDE  و زبان برنامه نویسی C++ یار قدیمی ماست بیشتر آموزش های حول ESP32 با این پلتفورم دنبال میشه البته مطمئن باشید از میکروپایتون هم غافل نمیشیم.

بوردهای توسعه ESP32

ماژول های مختلفی با هسته ESP32 وجود داره که از رایج ترین اونها ESP-WROOM-32 هست که داخل ایران هم به راحتی پیدا میشه برای این ماژول بورد های توسعه متفاوتی با امکانات مختلفی (مثل OLED، دوربین، شارژر باتری و …) زده شده که این امکانات با توجه به بوردی که دارید مشخص میشه، اما معمول ترین این بوردها بورد شکل زیره که راحت تر پیدا میشه و قیمتش هم مناسب تره.

بورد توسعه ESP32

دقت کنید ممکنه بوردی که شما توی دست دارید با این بورد متفاوت باشه، پس بهتره از نحوه پایه بندی بورد خودتون مطمئن بشید.

بورد های ESP منطق 3.3 ولتی دارن پس اگه جایی لازمه با دستگاهی که منطق 5 ولت داره کار کنید حواستون به تبدیل سطح منطقی باشه

پایه بندی ماژول ESP32

بورد ESP32 رگولاتر داخلی 3.3 ولت داره این یعنی VIN هرچی باشه خود بورد اونو به 3.3 ولت تبدیل میکنه اما بهتره VIN رو بیشتر از 5 ولت ندید تا تلفات انرژی بالا نره و مشکل ایجاد نشه، می تونید هم برای تغذیه ماژول مستقیم به پایه 3.3 ولت ولتاژ 3.3 اعمال کنید.

اگر پایه EN را LOW کنید ماژول غیرفعال میشه.

این بورد دو کانال اصلی ADC داره، ADCهای با شماره قبل از 10 مربوط به کانال 1 و بعد از اون برای کانال 2 هست.

این بورد 10 پایه تاچ خازنی(T0 – T9) داره.

پایه های SPI با پیشوند H مربوط به SPI2 هستن و و اونایی که پیشوند V دارن برای SPI1.

برای شروع کار با ESP32 این اطلاعات کافیه ولی خب اگه اطلاعات مفصل تری می خواید می تونید از دیتاشیتش مطالعه کنید.

نصب پلتفورم ESP32 روی Arduino IDE

حالا که با بورد ESP32 آشنا شدید بهتره بریم سراغ طریقه نصب پکیج ESP32 روی Arduino IDE.

برای این کار مراحل ویدئو رو تماشا کنید یا مراحل زیر گام به گام دنبال کنید.

گام اول) به منوی File و بخش Preferences برید.

گام اول نصب ESP32 روی Arduino IDE

گام دوم) قسمت Addintional Boards Manager URLs رو باز کنید و URL پکیج ESP32 برای آردوینو رو در یک خط جدید کپی کنید.

گام سوم نصب ESP32 روی Arduino IDE
گام دوم نصب ESP32 روی Arduino IDE

گام سوم) از منوی Tools قسمت Boards بخش Boards Manger رو باز کنید.

گام چهارم نصب ESP32 روی Arduino IDE

گام چهارم) در پنجره بازه شده کلمه esp32 رو سرچ کنید و گزینه نمایش داده شده را در آخرین نسخه شروع به نصب کنید.

گام پنجم نصب ESP32 روی Arduino IDE

اگه دیدید هنگام نصب با خطا مواجه شدید فیلترشکن روشن کنید و مجددا نصب رو شروع کنید.

گام پنجم) کار تمومه، حالا اگه از منوی Tools بخش Board رو باز کنید میبنید که بوردهای زیادی به بخش ESP32 Arduino اضافه شده.

گام ششم نصب ESP32 روی Arduino IDE

فرآیند نصب بورد ESP روی Arduino IDE من با توجه به سرعت نتم حدود 20 دقیقه زمان برد پس اگه دیدید داره طول میکشه نگران نشید.

اولین پروژه با ESP32

حالا که بوردهای ESP32 رو با موفقیت روی نرم افزار آردوینو نصب کردیم، آماده شروع کار با ESP32 هستید و حالا میخوایم یک پروژه خیلی خیلی ساده انجام بدیم.

روی بورد ESP32 یک LED وجود داره که به پایه GPIO2 وصله، توی این پروژه می خوایم این LED رو روشن و خاموش کنیم.

برای این کار ابتدا از منوی Tools و بخش Board، از بوردای ESP32 مدل ESP32 Dev Module رو انتخاب می کنیم.

اگه بورد متفاوتی دارید همونو انتخاب کنید.

همونطور که میبینید بورد شما در قسمت Board تغییر کرد و کلی تنظیمات جدید اضافه شد، به هیچکدوم از این تظیمات کاری نداریم(البته فعلا!)، فقط پورتی که برای بورد درنظر گرفته شده رو انتخاب می کنیم.

اولین پروژه با ESP32

اگر دیدید سیستمتون بورد رو نمیشناسه لابد درایور CPL2101 رو قبلا نصب نکردید، اگه اینطوره این درایور رو از اینجا دانلود کنید و نصب کنید و دوباره امتحان کنید.

حالا کد زیر رو کپی کنید.

حالا وقتشه گزینه Upload رو بزنید و تمام.

ممکنه فرآیند حین آپلود دچار خطا بشه، اصلا جای نگرانی نیست، اگر این اتفاق براتون افتاد حین زدن دکمه Upload دکمه BOOT رو که روی بورد هست فشار بدید و بعد از نمایش پیام Writing at 0x00001000…(100%) کلید رو رها کنید.

نتیجه گیری

این تازه شروع کار با ESP32 بود ولی امیدواریم همین آموزش اولیه راه شما رو به دنیای اینترنت اشیا باز کنه و پروژه های باحالی انجام بدید.

2 نظر در مورد “آموزش نصب ESP32”

  1. سلام
    ببخشید این روش برای همه بورد های ESP32 جواب می ده؟
    برای بوردهای ESP8266 چی؟ مثل nodemcu

    1. سلام
      بله برای همه بوردهای ESP32 همین روش جواب میده اما برای بردهای ESP8266 و ESP12 نیست، برای اونا بزودی آموزش جداگونه میذاریم

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *