آموزش MicroPython با ESP32

MicroPython with the ESP32

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
توضیحات دوره: ساده ترین راه برای نوشتن برنامه برای میکروکنترلر ESP32. زبان برنامه نویسی MicroPython نحوه استفاده از MicroPython با میکروکنترلر ESP32 نحوه استفاده از ویرایشگر Thonny با MicroPython و ESP32. نحوه استفاده از MicroPython با تجهیزات جانبی رایج مانند موتورها، نمایشگرها و سنسورها. نحوه استفاده از MicroPython برای نوشتن برنامه هایی که با سرویس های IoT مانند IFTTT کار می کنند. نحوه جستجو، یافتن و نصب کتابخانه های MicroPython در ESP32. پیش نیازها: شما درک اولیه ای از الکترونیک دارید. شما با مونتاژ مدارهای ساده روی تخته نان راحت هستید و مفاهیم ساده ای مانند مقاومت های کششی و تقسیم کننده های ولتاژ را درک می کنید. شما درک اولیه ای از میکروکنترلرها دارید. برای مثال، می‌دانید GPIO، رابط‌های I2C یا SPI و PWM چیست. شما می دانید که اگر یک دستگاه 3.3 ولت را به یک منبع تغذیه 5 ولت وصل کنید، به دستگاه آسیب می رسانید. شما با مفاهیم مرتبط مانند اینترنت اشیا (که در یکی از بخش های دوره ارائه می شود) آشنا هستید. شما با حداقل یک زبان برنامه نویسی و ابزار برنامه نویسی راحت هستید. فرقی نمی کند که کدام یک، زیرا همه زبان های مدرن و برنامه نویسی اصول اولیه یکسانی دارند. شما ذهنیت رشدی دارید و حاضرید سخت کار کنید تا یاد بگیرید. اگر احساس می‌کنید که یکی از این کادرها را علامت نمی‌زنید، ابتدا یکی از دوره‌های مقدماتی آردوینو و الکترونیک من را انجام دهید.

آخرین نسخه در ژوئن و ژوئیه 2022 به‌روزرسانی شد تا آخرین نسخه‌های ویرایشگر Thonny (نسخه 4) و میان‌افزار MicroPython (نسخه 1.18+) را پوشش دهد.

جزئیات بیشتر درباره این به‌روزرسانی: من سخنرانی‌های جدیدی را معرفی کرده‌ام تا به شما نحوه نصب و استفاده از Thonny 4 و نحوه ارتقاء Devkit ESP32 و بردهای Raspberry Pi Pico خود را برای استفاده از میان‌افزار MicroPython 1.18 به شما نشان دهم.

من همچنین همه آزمایش‌ها را آزمایش کرده‌ام تا مطمئن شوم که با این نسخه‌های Thonny و MicroPython کار می‌کنند.

اگر از یک برد ESP32 استفاده می‌کنید که نمی‌تواند به طور خودکار وارد حالت آپلود شود، راه حلی را در یک سخنرانی جدید در بخش 3 پیدا خواهید کرد.

-------------------------

با این دوره آموزشی، نحوه استفاده از MicroPython با میکروکنترلر ESP32 را خواهید آموخت.

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

این دوره برای چه کسانی است؟

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

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

  2. اگر تجربه برنامه نویسی کمی دارید، MicroPython یک گزینه عالی برای یادگیری نحوه برنامه نویسی سخت افزار است. این دوره به شما کمک می کند تا MicroPython را به اندازه کافی یاد بگیرید تا بتوانید برنامه هایی را بنویسید که روی میکروکنترلر ESP32 اجرا می شوند.

  3. اگر در برنامه نویسی ESP32 با Arduino IDE و زبان تجربه دارید، اما MicroPython را بررسی کنید، این دوره به شما در انجام این کار کمک می کند.

MicroPython چیست؟

MicroPython یک زبان برنامه نویسی است که سینتکس و ویژگی های زبان Python 3 را به عاریت گرفته است.

Python 3 یک زبان همه منظوره قدرتمند در سطح بالا است که برای یادگیری و استفاده آسان طراحی شده است. این زبان بسیار محبوب و در میان 5 زبان برنامه نویسی پرکاربرد است. در نتیجه، دارای مجموعه گسترده ای از منابع یادگیری، اسناد عالی و کتابخانه های کد است که گستره شگفت انگیزی از برنامه ها را پوشش می دهد.

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

MicroPython پس از پایتون مدل‌سازی شد تا مانع ورود افرادی شود که می‌خواهند برنامه‌هایی را برای میکروکنترلرها یا دستگاه‌های جاسازی شده‌ای که منابع محدودی دارند بنویسند.

ESP32 چیست؟

ESP32 یک دستگاه میکروکنترلر قدرتمند و در عین حال کم هزینه از Espresif است.

جذابیت دستگاه ESP32 این است که دارای یک CPU دو هسته ای قدرتمند، با مقادیر نسبتاً زیادی حافظه رم و حافظه فلش، مکمل کاملی از گزینه های ارتباطات بی سیم و سیمی، با تعداد زیادی پین ورودی/خروجی در یک دستگاه کوچک است. بسته کم هزینه.

ESP32 همچنین همه کاره است، زیرا می توانید آن را با ابزارها و زبان های برنامه نویسی مختلف، از جمله Arduino IDE، و البته MicroPython، برنامه ریزی کنید.

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

اهداف این دوره چیست؟

این دوره دارای 3 هدف اصلی است:

  1. برای اینکه شما را با زبان برنامه نویسی MicroPython آشنا کنیم، حتی اگر تجربه قبلی کمی داشته باشید یا اصلاً تجربه نداشته باشید.

  2. برای کمک به شما برای یادگیری نحوه استفاده از MicroPython با دستگاه‌های خارجی رایج، مانند موتورها و صفحه‌نمایش، با برنامه‌های MicroPython که روی میکروکنترلر ESP32 اجرا می‌شوند.

  3. برای تثبیت این دانش با کمک دو پروژه capstone. در این پروژه‌ها، با ترکیب دانشی که قبلاً در دوره کسب کرده‌اید، یک ابزار کار می‌سازید.

پیش نیازهای دانش چیست؟

قبل از شروع این دوره، لطفاً تأیید کنید که کادرهای زیر را علامت بزنید:

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

  2. شما درک اولیه ای از میکروکنترلرها دارید. برای مثال، می‌دانید GPIO، رابط‌های I2C یا SPI و PWM چیست. می‌دانید که اگر یک دستگاه 3.3 ولتی را به منبع برق 5 ولتی وصل کنید، به دستگاه آسیب می‌رسانید.

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

  4. با حداقل یک زبان برنامه نویسی و ابزار برنامه نویسی راحت هستید. فرقی نمی‌کند کدام یک، زیرا همه زبان‌های مدرن و برنامه‌نویسی اصول اولیه یکسانی دارند.

  5. شما یک طرز فکر رشد دارید و مایلید سخت کار کنید تا یاد بگیرید.

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

سازمان دوره

این دوره در چهار بخش تنظیم شده است.

در قسمت اول، اصول اولیه را یاد خواهید گرفت. اینجاست که می‌آموزید چگونه Thonny، ویرایشگر برنامه‌نویسی ما را راه‌اندازی و استفاده کنید، و ESP32 خود را برای کار با MicroPython آماده کنید.

شما همچنین این فرصت را خواهید داشت که اصول اولیه MicroPython و مکان و نحوه یافتن کتابخانه‌های سازگار را بیاموزید.

بخش دوم جایی است که شما آستین ها را بالا می زنید و برنامه های MicroPython را می نویسید. شما با عملیات پین ساده شروع می کنید که LED ها را چشمک می زند و دکمه ها را می خوانند، سپس به سراغ حسگرها، نمایشگرها و موتورها می روید. بخش بزرگی به برنامه‌های Wifi و اینترنت اشیا اختصاص داده شده است، و بخش دیگری به موضوعات پیشرفته‌تر مانند تایمرهای سخت‌افزاری، کار با حسگرهای داخلی و خواب اختصاص دارد.

در قسمت سوم و آخر، دانش جدید خود را با کمک دو پروژه Capstone تثبیت خواهید کرد. هر دو پروژه اجزای سخت افزاری یکسانی را با یک تفاوت بزرگ در نرم افزار ترکیب می کنند. در حالی که در پروژه اول، تمام کدهای MicroPython در یک فایل وجود دارد، در پروژه دوم به شما نشان می‌دهم که چگونه طرح را مدولار کنید و کد را به دو فایل تقسیم کنید.

نرم افزار و سخت افزار مورد نیاز

برای جزئیات بیشتر در مورد نرم افزار و سخت افزار مورد نیاز، دو سخنرانی جداگانه در این بخش آماده کرده ام که از شما دعوت می کنم در ادامه آن را تماشا کنید.

اما، به طور خلاصه:

  • برای نرم افزار، ابزار برنامه نویسی Thonny و سیستم عامل MicroPython برای ESP32 را در نظر خواهید گرفت. هر دو منبع باز و رایگان هستند

  • برای سخت‌افزار، به یک برد ESP32 و مجموعه‌ای از اجزای متداول مانند LED، مقاومت، سنسور و موتور نیاز دارید. مهم نیست کدام برد ESP32 دارید. تا زمانی که ESP32 باشد، با MicroPython کار خواهد کرد.

اگر یکی از دوره‌های آردوینو من را گذرانده‌اید، احتمالاً از قبل هر آنچه را که نیاز دارید دارید.

برای جزئیات، لطفاً به دو سخنرانی در این بخش مراجعه کنید، جایی که من به جزئیات نرم افزار و سخت افزار مورد نیاز می پردازم.

باشه، بعدش چیه؟؟؟

امیدوارم اکنون درک خوبی از این دوره داشته باشید و آنچه را که در آینده باید انتظار داشته باشید.

بخش اول شامل چندین سخنرانی رایگان با اطلاعات دقیق تر در مورد دوره است. در صورت تمایل قبل از ثبت نام، آنها را تماشا کنید.

یادگیری مبارک!


سرفصل ها و درس ها

معرفی Introduction

  • 01.10 این دوره در مورد چیست؟ 01.10 What is this course about?

  • 01.20 uPython چیست و چرا باید اهمیت دهید؟ 01.20 What is uPython and why should you care?

  • 01.30 نرم افزاری که نیاز دارید 01.30 Software you will need

  • 01.40 سخت افزاری که نیاز دارید 01.40 Hardware you will need

  • 01.50 چگونه از این دوره بیشترین بهره را ببرید 01.50 How to get the most out of this course

  • 01.60 اسکریپت های آزمایشی دوره را دریافت کنید 01.60 Get the demo scripts for the course

شروع کار با uPython Getting started with uPython

  • 02.10 uPython در مقابل CPython 02.10 uPython vs CPython

  • 02.20 منابع uPython 02.20 uPython resources

  • بردهای سازگار با uPython 02.30 02.30 uPython compatible boards

کار با Thonny IDE Working with Thonny IDE

  • 03.10 شروع به کار با Thonny IDE برای پایتون 03.10 Getting started with Thonny IDE for Python

  • 03.11 به Thonny 4 ارتقا دهید 03.11 Upgrade to Thonny 4

  • 03.20 نحوه نصب سیستم عامل MicroPython در ESP32 03.20 How to install the MicroPython firmware to your ESP32

  • 03.21 ESP32 را به MicroPython نسخه 1.18 ارتقا دهید 03.21 Upgrade ESP32 to MicroPython v1.18

  • 03.22 چگونه مشکل آپلود سیستم عامل در ESP32 را حل کنیم 03.22 How to solve a failure to upload the firmware on an ESP32

  • 03.30 تنظیم مترجم 03.30 Setting an interpreter

  • 03.40 نحوه نوشتن و اجرای یک برنامه MicroPython 03.40 How to write and execute a MicroPython program

  • 03.50 نماهای دیگر در Thonny IDE 03.50 Other views in Thonny IDE

  • 03.60 Thonny IDE با Raspberry Pi Pico 03.60 Thonny IDE with Raspberry Pi Pico

  • 03.61 Rpi Pico را به uPython 1.18 ارتقا دهید 03.61 Upgrade Rpi Pico to uPython 1.18

  • 03.70 استفاده از Thonny IDE با BBC micro:bit 03.70 Using Thonny IDE with BBC micro:bit

  • 03.80 Thonny IDE پیکربندی پیشرفته 03.80 Thonny IDE Advanced configuration

  • 03.90 بسته های پایتون را در PyPI پیدا کنید 03.90 Find Python Packages at PyPI

MicroPython در ESP32 MicroPython on the ESP32

  • 04.10 پوسته MicroPython 04.10 The MicroPython shell

  • 04.20 آپلود و دانلود فایل با Thonny 04.20 Uploading and downloading files with Thonny

  • 04.40 برنامه نویسی میکروپایتون با فایل ها 04.40 MicroPython Programming with files

  • 04.50 چگونه یک برنامه در حال اجرا را قطع کنیم 04.50 How to interrupt a running program

  • 04.60 چگونه یک برنامه را در هنگام بوت اجرا کنیم 04.60 How to run a program at boot

  • 04.70 نحوه اشکال زدایی برنامه MicroPython 04.70 How to debug MicroPython program

یک شروع سریع پایتون (و میکروپایتون). A Python (and MicroPython) quick start

  • 05.10 مقدمه ای بر این بخش 05.10 Introduction to this section

  • 05.20 کلمات کلیدی 05.20 Keywords

  • 05.30 نظرات 05.30 Comments

  • 05.40 متغیرها و انواع 05.40 Variables and types

  • 05.50 اپراتورها 05.50 Operators

  • 05.60 رشته ها و قالب بندی 05.60 Strings and formatting

  • 05.70 لیست ها، تاپل ها، محدوده ها 05.70 Lists, tuples, ranges

  • 05.80 دیکشنری 05.80 Dictionaries

  • 05.90 حلقه 05.90 Loops

  • 05.100 کنترل با if ..elif.. else 05.100 Control with if ..elif.. else

  • 05.110 توابع 05.110 Functions

  • 05.120 اشیاء و کلاس ها 05.120 Objects and classes

  • 05.130 ملاحظات برنامه نویسی MicroPython 05.130 MicroPython coding considerations

کتابخانه ها Libraries

  • 06.10 درباره ماژول های MicroPython 06.10 About MicroPython modules

  • 06.20 ماژول های داخلی 06.20 Built-in modules

  • 06.30 ماژول های انجمن 06.30 Community modules

  • 06.40 نحوه نصب ماژول خارجی 06.40 How to install an external module

عملیات پین ساده Simple pin operations

  • 07.10 یک LED با حلقه چشمک بزنید 07.10 Blink an LED with loop

  • 07.20 یک LED با تایمر چشمک بزنید 07.20 Blink an LED with timer

  • 07.30 یک LED با PWM محو کنید 07.30 Fade an LED with PWM

  • 07.40 خواندن یک دکمه با حلقه 07.40 Read a button with loop

  • 07.50 خواندن یک دکمه با وقفه سخت افزاری 07.50 Read a button with hardware interrupt

  • 07.60 خواندن یک دکمه با وقفه تایمر 07.60 Read a button with timer interrupt

  • 07.70 یک پتانسیومتر بخوانید 07.70 Read a potentiometer

حسگرها Sensors

  • سنسور محیطی 08.10 DHT22 08.10 DHT22 environment sensor

  • سنسور محیطی 08.20 BME280 08.20 BME280 environment sensor

  • سنسور لمسی داخلی 08.32 ESP32 08.30 ESP32 internal touch sensor

  • شتاب سنج آنالوگ 08.40 ADXL335 08.40 ADXL335 analog accelerometer

  • سنسور فاصله اولتراسونیک 08.50 HC-SR04 08.50 HC-SR04 ultrasonic distance sensor

نمایش می دهد Displays

  • 09.10 صفحه نمایش LCD 2x16 با PCF8574 - قسمت 1: سخت افزار I2C 09.10 2x16 LCD display with PCF8574 - Part 1: hardware I2C

  • 09.12 صفحه نمایش LCD 2x16 با PCF8574 - قسمت 2: نرم افزار I2C 09.12 2x16 LCD display with PCF8574 - Part 2: software I2C

  • 09.20 0.96 اینچ OLED SSD1306 I2C 09.20 0.96" OLED SSD1306 I2C

  • 09.30 1.3 اینچ OLED SH1106 I2C 09.30 1.3" OLED SH1106 I2C

  • 09.40 0.96 اینچ OLED SSD1315 I2C 09.40 0.96" OLED SSD1315 I2C

  • 09.50 نئوپیکسل 09.50 Neopixels

  • صفحه نمایش ماتریکس 09.60 MAX7219 8x8 - قسمت 1: پیکسل های تصادفی 09.60 MAX7219 8x8 Matrix display - Part 1: random pixels

  • 09.62 MAX7219 نمایشگر ماتریس 8x8 - قسمت 2: متن 09.62 MAX7219 8x8 Matrix display - Part 2: text

موتورها Motors

  • 10.10 مینی سروو موتور 10.10 Mini servo motor

  • موتور 10.20 DC با DRV8871 10.20 DC motor with DRV8871

وای فای Wi-Fi

  • 11.10 نحوه استفاده از Wi-Fi: مقدمه 11.10 How to use Wi-Fi: an introduction

  • 11.20 خواندن متن از یک فایل با HTTP GET 11.20 Read text from a file with HTTP GET

  • 11.30 یک درخواست POST به Dweet کنید 11.30 Make a POST request to Dweet

  • 11.40 یک درخواست POST به IFTTT ارسال کنید 11.40 Make a POST request to IFTTT

  • 11.50 آب و هوای فعلی را از OpenWeatherMap دریافت کنید 11.50 Get current weather from OpenWeatherMap

قابلیت های دیگر Other capabilities

  • 12.10 تایمر سخت افزاری 12.10 Hardware Timers

  • کنترل فرکانس ساعت CPU 12.20 12.20 CPU clock frequency control

  • 12.30 سنسور جلوه هال 12.30 Hall effect sensor

  • 12.40 سنسور دمای خام 12.40 Raw temperature sensor

  • 12.50 خواب عمیق و خواب سبک - قسمت 1 12.50 Deep-Sleep and light-sleep - Part 1

  • 12.52 خواب عمیق و خواب سبک - قسمت 2: آزمایشات 12.52 Deep-Sleep and light-sleep - Part 2: experiments

  • 12.60 تنظیم مجدد 12.60 Reset

  • 12.70 RTC با تنظیم دستی 12.70 RTC with manual setting

  • 12.72 RTC با ntptime 12.72 RTC with ntptime

  • 12.80 داده های حسگر را به فایل CSV بنویسید 12.80 Write-append sensor data to a CSV file

  • 12.82 خواندن داده های حسگر از یک فایل CSV 12.82 Read sensor data from a CSV file

پروژه Capstone: سنسور + LCD با ESP32 Capstone project: Sensor + LCD with the ESP32

  • 13.10 این پروژه در مورد چیست؟ 13.10 What is this project about?

  • 13.20 سیم کشی 13.20 Wiring

  • فیلمنامه 13.30 13.30 Script

پروژه Capstone: یک نمونه اسکریپت مدولار Capstone project: An example modular script

  • 14.10 این مینی پروژه در مورد چیست؟ 14.10 What is this mini-project about?

  • 14.20 سیم کشی 14.20 Wiring

  • نسخه 14.30 اسکریپت: تک فایل 14.30 Script v1: single file

  • 14.40 اسکریپت نسخه 2: مدولار 14.40 Script v2: modular

سخنرانی پاداش Bonus lecture

  • سخنرانی پاداش Bonus lecture

نمایش نظرات

نظری ارسال نشده است.

آموزش MicroPython با ESP32
خرید اشتراک و دانلود خرید تکی و دانلود | 160,000 تومان (5 روز مهلت دانلود) زمان تقریبی آماده سازی لینک دانلود این دوره آموزشی حدود 5 تا 24 ساعت می باشد.
جزییات دوره
11 hours
91
Udemy (یودمی) udemy-small
10 فروردین 1402 (آخرین آپدیت رو دریافت می‌کنید، حتی اگر این تاریخ بروز نباشد.)
3,228
4.4 از 5
ندارد
دارد
دارد

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Dr Peter Dalmaris Dr Peter Dalmaris

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

Udemy (یودمی)

یودمی یکی از بزرگ‌ترین پلتفرم‌های آموزشی آنلاین است که به میلیون‌ها کاربر در سراسر جهان امکان دسترسی به دوره‌های متنوع و کاربردی را فراهم می‌کند. این پلتفرم امکان آموزش در زمینه‌های مختلف از فناوری اطلاعات و برنامه‌نویسی گرفته تا زبان‌های خارجی، مدیریت، و هنر را به کاربران ارائه می‌دهد. با استفاده از یودمی، کاربران می‌توانند به صورت انعطاف‌پذیر و بهینه، مهارت‌های جدیدی را یاد بگیرند و خود را برای بازار کار آماده کنند.

یکی از ویژگی‌های برجسته یودمی، کیفیت بالای دوره‌ها و حضور استادان مجرب و با تجربه در هر حوزه است. این امر به کاربران اعتماد می‌دهد که در حال دریافت آموزش از منابع قابل اعتماد و معتبر هستند و می‌توانند به بهترین شکل ممکن از آموزش‌ها بهره ببرند. به طور خلاصه، یودمی به عنوان یکی از معتبرترین و موثرترین پلتفرم‌های آموزشی آنلاین، به افراد امکان می‌دهد تا به راحتی و با کیفیت، مهارت‌های مورد نیاز خود را ارتقا دهند و به دنبال رشد و پیشرفت شغلی خود باشند.