آموزش Espآموزش آردوینوآموزش اینترنت اشیا

آموزش جامع برنامه نویسی برد ESP32 با آردوینو

سلام. آموزش جامع و مرحله به مرحله برنامه نویسی برای برد ESP32 با کامپایلر آردوینو (تنظیم Arduino IDE) را آماده کردیم.

آموزش نوشتن برنامه با Arduino برای برد وایفای ESP32

آموزش نوشتن برنامه با Arduino برای برد وایفای ESP32

شرکت Espressif Systems برد ESP8266-01 را ساخت که در ها را برای بسیاری از علاقه مندان برای ورود به دنیای IoT باز کرد. از آن زمان زمینه IoT یا همان اینترنت اشیا به شدت در حال توسعه است و بسیاری از محصولات بازار را به خود اختصاص داده اند. این ماژول کوچک 8 دلاری ارزان قیمت ، یک پردازنده 32 بیتی دو هسته ای دارد. همچنین دارای ماژول Wi-Fi و بلوتوث دو حالته داخلی است که بسیار مناسب برای کلیه پروژه های اساسی الکترونیک است.

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

برای یادگیری آردوینو (برنامه نویسی، ساخت ربات، ارتباط با اندروید) روی دوره آموزش آردوینو کلیک کنید.
برای یادگیری کامل الکترونیک روی دوره آموزش الکترونیک کلیک کنید.

همچنین آموزش برنامه نویسی ESP8266 را مشاهده کنید.

موارد مورد نیاز برای این آموزش

  1. ماژول ESP32
  2. آردوینو IDE –
  3. کابل برنامه نویسی (کابل میکرو USB)
قطعات مورد نیاز را از فروشگاه قطعات آیرنکس تهیه کنید.

دیتاشیت ماژول ESP32

بیایید نگاهی به ماژول ESP32 بیندازیم. این ماژول کمی بزرگتر از ماژول ESP8266-01 است. بیایید این برد را به قسمتهای کوچک تقسیم کنیم.

دیتاشیت ماژول ESP32
دیتاشیت ماژول ESP32

همانطور که می بینید قلب این ماژول ESP-WROOM-32 است که یک ریزپردازنده 32 بیتی است. همچنین دارای دو دکمه و LED است که در زیر توضیح داده شده اند.

جک میکرو USB: جک micro USB برای اتصال ESP32 به کامپیوتر از طریق کابل USB استفاده می شود. این برای برنامه نویسی ماژول ESP استفاده می شود و می تواند برای اشکال زدایی سریالی نیز مورد استفاده قرار گیرد زیرا از ارتباط سریال پشتیبانی می کند.

دکمه EN: دکمه EN دکمه تنظیم مجدد ماژول ESP است. با فشار دادن این دکمه ، کد در حال اجرا در ماژول ESP بازنشانی می شود.

دکمه Boot : این دکمه برای آپلود برنامه از Arduino به ماژول ESP استفاده می شود. این دکمه پس از کلیک روی نماد بارگذاری روی Arduino IDE باید فشرده شود. وقتی دکمه Boot به همراه دکمه EN فشرده می شود ، ESP وارد حالت بارگذاری سیستم عامل می شود. (با این قضیه سیستم عامل بازی نکنید مگر اینکه بدانید چه کاری انجام می دهید !)

چراغ قرمز: از چراغ قرمز موجود در برد برای نشان دادن وضعیت تغذیه استفاده می شود. در هنگام روشن شدن برد ، قرمز می شود.

چراخ آبی: چراغ آبی موجود در صفحه به پین ​​GPIO متصل است. می توان آن را از طریق برنامه نویسی روشن یا خاموش کرد. در برخی از تخته های کلون شده چینی این ال ای دی به رنگ قرمز نیز میباشد.

پین های I/O: این قسمت است که پیشرفت اساسی در آن اتفاق افتاده است. بر خلاف ESP8266 ، در ESP32 می توانیم از طریق پین های بازشو به تمام پین های I/O ماژول دسترسی پیدا کنیم. این پین ها قادر به خواندن / نوشتن دیجیتال ، خواندن / نوشتن آنالوگ ، PWM ، IIC ، SPI ، DAC و موارد دیگر هستند. بعداً بیشتر راجع به اینها توضیح میدهیم.

ESP-WROOM-32: این قلب ماژول ESP32 است. این ریزپردازنده 32 بیتی است که توسط سیستم های اسپرسیف تولید شده است.

این ماژول دارای وای فای و بلوتوث داخلی است. همچنین دارای یک رم 512 کیلوبایتی و فلاش 16 مگابایتی است. این ماژول دارای 36 پین GPIO است. و از پروتکل های ارتباطی SPI ، IIC ، I2S ، UART ، CAN پشتیبانی میکند. همچنین دارای 16 کانال آنالوگ به دیجیتال ADC است. این کانال ها 12 بیتی هستند. همچنین دارای 2 کانال DAC هشت بیتی است.

همچنین اگر در مورد این مطلب سوالی داشتید در انتهای صفحه در قسمت نظرات بپرسید

آماده سازی نرم افزار آردوینو برای برنامه نویسی برد ESP32

مرحله 1: ابتدا آخرین نسخه نرم افزاز Arduino را از این لینک دانلود کنید : دانلود آردوینو آخرین نسخه

مرحله 2: اگر قبلا تا بحال از ESP32 با آردوینو استفاده نکردید این مرحله را نادیده بگیرید. در صورتی که قبلا استفاده کرده اید ابتدا باید در Documents/Arduino/hardware پوشه Espriff را حذف کنید.

مرحله 3: پس از نصب ، کامپایلر Arduino را باز کنید و به Files -> Preferences بروید.

نصب تنظیمات برد ESP روی کامپایلر Arduino

سپس در قسمتی که در تصویر بالا مشخص شده همه متن زیر را کپی کنید و در آن جا قرار بدهید.

https://dl.espressif.com/dl/package_esp32_index.json, 
http://arduino.esp8266.com/stable/package_esp8266com_index.json

سپس روی Ok کلیک کنید.

مرحله 4: اکنون به Tools -> Boards -> Board Managers بروید. سپس ESP32 را جستجو کنید. اگر URL به درستی جایگذاری شد پنجره شما باید صفحه زیر را با دکمه Install پیدا کند ، فقط بر روی دکمه Install کلیک کنید تا برد نصب شود.

راه اندازی ماژول وایفای ESP در Arduino

از اتصال اینترنت مطمئن باشید و صبر کنید تا نصب کامل شود. پس از نصب نرم افزار آردوینو آماده برنامه نویسی برای برد ESP32 است.

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

مرحله 1: برد ESP32 خود را از طریق کابل میکرو USB به رایانه متصل کنید. مطمئن شوید که چراغ قرمز روی ماژول روشن میشود.

مرحله 2: Arduino IDE را باز کنید و به Tools -> Board بروید و مطابق عکس زیر برد ESP32Dev را انتخاب کنید.

انتخاب برد ESP32 در Arduino

مرحله 3: Device Manager را باز کنید و بررسی کنید که ESP32 شما به کدام پورت وصل شده است.

Device Manager برای پیدا کردن پورت COM

همانطور که در تصویر بالا نشان داده شده است ، ماژول من به COM 8 متصل شده است.

مرحله 4: به Arduino IDE و در و قسمت Tools -> Port بروید و پورتی را انتخاب کنید که ESP شما به آن متصل است. پس از انتخاب ، باید چیزی شبیه به این را در گوشه سمت چپ پایین IDE مشاهده کنید.

اطمینان از متصل شدن برد ESP32 به کامپیوتر
مرحله 5: حالا برای تست ما کد پروژه چشمک زن ال ای دی را در برد خود بارگذاری میکنیم. طبق این برنامه LED ما باید در هر 1 ثانیه چشمک بزند.

int LED_BUILTIN = 2; // تنظیم پین ال ای دی
void setup() {
pinMode (LED_BUILTIN, OUTPUT); // تنظیم پین به عنوان خروجی
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // ال ای دی روشن
delay(1000); // به مدت 1 ثانیه
digitalWrite(LED_BUILTIN, LOW); // ال ای دی خاموش
delay(1000); // به مدت 1 ثانیه
}

مرحله 6: برای کامپایل کد ، روی کامپایل کلیک کنید.

توجه داشته باشید برای برخی از ماژول ها ، لازم است که هنگام بارگذاری ، دکمه Boot را نگه دارید تا از خطا جلوگیری شود.

می توانید پیش بروید و سایر برنامه هایی که به صورت نمونه در آردوینو موجود است را در File -> Example  -> ESP32 امتحان کنید تا با سایر ویژگی های ESP32 آشنا شوید. اگر مشکلی داشتید ، سؤال خود را در بخش نظرات پایین صفحه ارسال کنید.

برای مشاهده توضیحات روی دوره مورد نظر کلیک کنید.

برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام آیرنکس عضو شوید.

تصویر از محمد رحیمی

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید را قرار دهم. (در خصوص سوال در مورد این مطلب از قسمت نظرات همین مطلب اقدام کنید) سعی میکنم تمام نظرات را پاسخ دهم.

14 نظر

  1. سلام خیلی خوب بود فقط اموزش وصل کردن رله 1 کانال 2 کانال 4 کانال 8 کانال بدید

  2. سلام جناب
    ممنون ازمطالبتون…
    من یه دیتا شیت جامع از esp32cam میخواستم که تو اینترنت پیدا نکردم…
    اگه بذارید ممنون میشم…
    ضمنا می‌خوام این ماژول رو بدون آردینو استفاده کنم، چه پروگرمری نیاز دارم؟
    باز هم تشکر

  3. سلام.
    ممنون از مطلب خوبتون.
    من روی ESP32 nodemcu برنامه ای رو با فشردن کلید بوت آپلود کردم و writing موفق انجام شد. اما برای دفعات بعدی دیگه موفق به آپلود برنامه روی همون برد نشدم. آیا بعد هر بار آپلود باید ماژول flash بشه؟

    متشکر

  4. با سلام خدمت شما اقای رحیمی
    من با esp32 ی کدی که نوشتم رو اجرا کردم و 4 کانال رله وصل کردم به پایه های 2 4 5 18 ولی وقتی ماژول روشن میشه به صورت پیشفرض همه رله ها روشن میشن و وقتی که قسمتی که برای خاموش کردن کل رله هارو اجرا میکنم فقط کل رله ها چشمک میزنن و روشن میمونن ولی وقتی به صورت تکی خاموش میکنم خاموش میشه.درضمن تمام قسمتهای کد برعکس اجرا میشه یعنی high وlow برعکس عمل میکنه علت چیه.ممنون از سایت خوبتون

    1. سلام جناب. به احتمال خیلی زیاد در اتصالات اشتباه کردید. اتصالات به ماژول رله 4 کانال رو بررسی کنید و تغییر بدید.

  5. سلام من یه میکروفون INMP4441 v رو میخواستم به esp 32 متصل کنم میخواستم ببینم نحوه اتصال پایه ها باید به چه صورت باشه میخواستم از پروتکل I2S استفاده کنم برای دریافت صدا از میکروفون ممنون میشم راهنماییم کتید

    1. هنوز پروژه های زیادی با برد ESP32 قرار ندادیم به زودی فعالیت در زمینه ESP32 شروع میشه سایت رو چک کنید. اینطور نمیتونم کمکتون کنم متاسفانه

  6. با سلام
    در مورد پاک کردن برنامه روی ماژول esp32 راهنمایی بفرمایید.
    ممنون

  7. سلام ببخشید من ماژول esp رو که به لب تاب وصل میکنم برد را تشخیص نمیدهد مشکل از چیه

    1. سلام یعنی اصلا در قسمت Device Manager وقتی که برد رو متصل و قطع میکنید تغییری حس نمیشه ؟

  8. سلام خدمت جناب استاد رحیمی

    بسیار روان و کامل توضیح دادین
    اجرتون با خدا.

    1. سلام عزیز. خوشحالم که راضی بودین نظر لطف شماست.

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

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