مهدی اشراقی
طراح و مهندس شبکه های کامپیوتری ، برنامه نویس
مهدی اشراقی
طراح و مهندس شبکه های کامپیوتری ، برنامه نویس

نوشته های بلاگ

نحوه اجرای پایتون روی برد های ESP32 و ESP8266

نحوه اجرای پایتون روی برد های ESP32 و ESP8266

در این پست یاد می‌گیریم که چطور میشه برنامه های میکرو پایتون روی ESP32 و ESP8266 اجرا کنیم .سلام . سعی میکنم پست ها کوتاه و کاربردی باشه . اگر جایی سوالی بود بپرسید من در حد دانشم پاسخ میدم .

آموزش تصویری این مقاله

میکروپایتون چیست ؟

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

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

اجرای برنامه های پایتون روی ESP8266 و ESP32 :

برای اینکه بتونید برنامه هایی که به زبان پایتون نوشید رو روی برد های ESP اجرا کنید باید ابتدا فریمور مخصوص میکروپاتیتون رو روی برد رایت کنید که کار بسیار ساده ای هست .

فریمور چیست ؟

فریمور یا firmware برنامه نرم ‌افزاری هست که در چیپ حافظه ROM نوشته میشه . Firmware در واقع مسئول رفتارهای سیستم در زمانی است که سیستم را روشن می‌کنیم. مثلا وظیفه فریمور میکروپایتون در اینجا تفسیر برنامه های پاتونی به زبان ماشین هست .

مراحل نصب روش اول (upycraft ):

برای کار با micropython نرم افزار های زیادی هست که من در این آموزش از upycraft استفاده می کنم .

نصب روی کامپیوتر

۱ . نصب پایتون

نصب پایتون بسیار راحته . از سایت رسمی پایتون دانلود و نصب کنید .

نسخه ویندوز پایتون       نسخه مک پایتون     نسخه لیینوکس

۲. دانلود upycraft (این برنامه احتیاج به نصب نداره )

برای دانلود از  آدرس گیت هاب استفاده کنید .

نصب روی برد

برای اینکه بتونید میکروپایتون رو روی برد اجرا کنید باید فریم ورک مخصوص هر برد رو دانلود کنید و اون رو توسط upycraft نصب کنید .

برای برد های ESP32 از این آدرس و برای برد های ESP8266 از این آدرس فایل .bin رو دانلود کنید

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

نحوه update framework :

در این قدم باید فریم ورک میکرو پایتون روی ESP32 رو نصب کنید . (مراحل برای ESP8266 یکسانه )

  1. برنامه upycraft رو اجرا کنید .
  2. از منوی Tools گزینه BurnFirmware رو انتخاب کنید .
میکرو پایتون روی ESP32
میکرو پایتون روی ESP32
  1. در قسمت board نوع برد خود را انتخاب کنید .
  2. در قسمت burn_addr  گزینه 0x1000 رو انتخاب کنید .
  3. در قسمت erase_flash گزینه yes رو انتخاب کنید تا اطلاعات موجود در برد شما حذف بشه .
  4. در قسمت com پورت سریال برد خودتون رو انتخاب کنید .
  5. در قسمت Firmware Chosse  گزینه users رو انتخاب کنید و به وسیله دکمه choose آدرس فایلی رو که برای برد دانلود کردید انتخاب کنید .
  6. بعد از وارد کردن قسمت های بالا روی OK کیلیک کنید تا فرآیند بارگذاری فریم ورک روی برد شروع بشه .
میکرو پایتون روی ESP32
میکرو پایتون روی ESP32

خوب بعد از این مرحله نصب میکرو پایتون روی ESP32 تموم شده و شما میتونید از منوی Tools زیر منوی Serial روی پورت سریال برد خودتون کلیک کنید و به برد متصل بشید .

در پست بعدی با محیط upycraft و نحوه کار کردن با اون آشنا میشیم .

مراحل نصب روش دوم (shell):

این مراحل رو در ویندوز ۱۰ توضیح میدم .

ابتدا Windows Powershell رو باز کنید و عبارت زیر رو وارد کنید تا نرم افزار وابسته به پایتون رو دانلود و نصب کنید .

esptool

بعد از اتمام مراحل دستور esptool.py رو که وارد کنید راهنماس استفاده از این دستور براتون نمایش داده میشه .

 

برای اینکه متوجه بشید که برد شما به چه شماره ای از Serial متصل شده از دستور زیر استفاده کنید .

حالا باید محتویات flush برد خودتون رو پاک کنید تا بتونیم میکروپایتون رو روی برد نصب کنیم . با دستور زیر این کار رو انجام بدید .

شماره پورت COM50 رو با شماره پورت برد خودتون تغییر بدید .

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

برای برد های ESP32 از این آدرس و برای برد های ESP8266 از این آدرس فایل .bin رو دانلود کنید

دستور dir میتونید پوشه های موجود رو ببینید و با دستور cd وارد پوشه مد نطرتون بشید .

دستور زیر رو وارد کنید تا فرایند نصب فریم ورک شروع بشه . فقط دقت داشته باشید شماره پورت و نام فایل رو تغییر بدید .

پورتی که من استفاده کردم COM50 هست و نام فریم ورک من esp8266-20200911-v1.13.bin حتما این مقادیر رو تغییر بدید .

نصب میکروپایتون

بعد از اتمام برد شما به صورت AP شروع به کار میکنه و میتونید اون رو با اسم MicroPython-xxxxxx پیدا کیند . رمز عبور هم micropythoN هست  . آدرس IP برد هم به صورت پیش فرض ۱۹۲.۱۶۸.۴.۱ تنظیم شده .

برچسب ها:
۱۲ دیدگاه
  • امیر ۱۲:۲۹ بعد از ظهر خرداد ۴, ۱۴۰۰ پاسخ

    با سلام
    فوق العاده بود توضیحاتتون فقط ویندوز ۷ رو کد دستوری pip install esptool توی power shell نمیشناسه لطفا راهنمایی کنید برای این مطلب.

    • مهدی اشراقی ۲:۱۸ بعد از ظهر خرداد ۴, ۱۴۰۰ پاسخ

      خیلی متشکرم . کلا نمیتونید از دستور pip استفاده کنید یا power shell خطا دریافت میکنید ؟
      متن خطا رو میتونید ارسال کنید تا کمک کنم ؟

  • امیر ۱:۵۱ بعد از ظهر خرداد ۴, ۱۴۰۰ پاسخ

    یه مشکلی دیگه ای ام هست com مورد نظر رو نمیشناسه اینم یه کمکی بکنید

    • مهدی اشراقی ۱۲:۲۸ بعد از ظهر خرداد ۶, ۱۴۰۰ پاسخ

      برای پیدا کردن شماره پورت باید از دستور mode در power shell استفاده کنید .در توضیحات بالا هست

  • امیر ۳:۲۴ بعد از ظهر خرداد ۴, ۱۴۰۰ پاسخ

    توی پاور شل خطای میده pip رو نمیشناسه مثل شما دستور هایلایت نشد داخل پرانتز نباید بزارم

    • مهدی اشراقی ۱۲:۲۹ بعد از ظهر خرداد ۶, ۱۴۰۰ پاسخ

      چرا از روش اول استفاده نمیکنید ؟ فیلم آموزش هم داخل سایت هست

  • محسن ۳:۱۸ بعد از ظهر خرداد ۱۷, ۱۴۰۰ پاسخ

    من با پاور شل با این ارور مواجه میشم:A fatal error occurred: Failed to connect to Espressif device: Timed out waiting for packet header
    لطفا راهنمایی کنید

    • مهدی اشراقی ۳:۲۹ قبل از ظهر خرداد ۱۸, ۱۴۰۰ پاسخ

      احتمالا شماره پورت سریال رو اشتباه وارد میکنید . برای فهمیدن شماره پورت از دستور mode در پاور شل استفاده کنید .
      اگر از شماره پورت سریال اطمینان دارید آنتی ویروس رو هم یکبار غیر فعال کنید و مجدد تست کنید .

  • محسن ۱۲:۵۴ بعد از ظهر خرداد ۱۸, ۱۴۰۰ پاسخ

    تشکر.برد esp32 من غیر اصل بود مرجوع کردم

    • محسن ۱۲:۳۵ بعد از ظهر خرداد ۳۱, ۱۴۰۰ پاسخ

      البته من مبتدی هستم و اشتباه کردم.برد اصل بود اما باید قبل از فلش فریم ورک دکمه boot رو بزنیم تا وارد مد فلش فریم ورک بشیم و عملیات شروع بشه

  • امیرحسین ۶:۰۷ بعد از ظهر تیر ۲۸, ۱۴۰۰ پاسخ

    سلام.وقت بخیر.چرا آموزش رو ادامه نمیدین.

    • مهدی اشراقی ۱:۰۵ بعد از ظهر تیر ۳۰, ۱۴۰۰ پاسخ

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

درج دیدگاه