آموزش Arduino FreeRTOS From Ground Up™: ساخت پروژه های بلادرنگ

Arduino FreeRTOS From Ground Up™ : Build RealTime Projects

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: ساخت بیش از 30 پروژه RealTime در پورت آردوینو FreeRTOS به هر برد آردوینو ساخت برنامه های همزمان چند وظیفه ای با FreeRTOS در Arduino Master ویژگی های مدیریت وظایف FreeRTOS Master FreeRTOS ویژگی های مدیریت منابع Master FreeRTOS ویژگی های همگام سازی وظایف Master FreeRTOS ویژگی های مدیریت رویداد Master FreeRTOS محاسبه استفاده از CPU یک RTOS پیاده‌سازی و توضیح الگوریتم‌های زمان‌بندی محبوب ویژگی‌های مدیریت وقفه Master FreeRTOS ویژگی‌های مدیریت زمان Master FreeRTOS درک میزان زمان‌بندی‌های یکنواخت درک زمان‌بندی‌های اولین خدمت‌رسانی درک زمان‌بندی‌های Round-Robin درک زمان‌بندی‌های Weighted-Round-Robin پیش نیازها:هر برد آردوینو با برنامه‌نویسی پایه آردوینو خواهد بود. یک مثبت

این دوره به شما مبانی سیستم‌های بلادرنگ و نحوه ساخت برنامه‌های بلادرنگ با استفاده از FreeRTOS در بردهای آردوینو را می‌آموزد. این دوره، نمای کلی دقیقی از ویژگی‌های هسته بی‌درنگ FreeRTOS ارائه می‌کند، آموزش مفصلی درباره APIهای مورد نیاز برای پیاده‌سازی ویژگی‌های مختلف FreeRTOS در آردوینو ارائه می‌کند و سپس به ساخت حدود 30 پروژه بی‌درنگ ادامه می‌دهد.

این دوره دانش قبلی سیستم های بلادرنگ و برنامه نویسی کاربردی را در نظر نمی گیرد. در پایان این دوره، شما باید بتوانید برنامه‌های چندوظیفه‌ای رایگان FreeRTOS خود را بسازید که از همه ویژگی‌های یک برنامه بلادرنگ مدرن استفاده می‌کنند (ویژگی‌هایی مانند سمافورها، mutex، پرچم‌های رویداد، قلاب‌ها، صف‌ها، صندوق‌های پستی و غیره) و سپس عملکرد این ویژگی‌ها را آزمایش کنید. همچنین باید بتوانید:  کاربرد CPU یک RTOS را محاسبه کنید، زمان‌بندی‌های یکنواخت نرخ را درک کنید، FreeRTOS را به هر برد آردوینو منتقل کنید، زمان‌بندی‌های Round-Robin Scheduler را درک کنید، Wighted-Round-Robin Schedulers را درک کنید. , درک زمان‌بندی‌هایی که اول می‌شوند، الگوریتم‌های زمان‌بندی محبوب را پیاده‌سازی و توضیح دهید و خیلی چیزهای دیگر. لطفاً به برنامه درسی کامل دوره نگاهی بیندازید.


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

معرفی Introduction

معرفی Introduction

  • معرفی Introduction

  • دانلود Arduino IDE Downloading the Arduino IDE

  • نصب آردوینو Installing Arduino

  • افزودن FreeRTOS به Arduino IDE Adding FreeRTOS to the Arduino IDE

  • راه اندازی سخت افزار Hardware Setup

شروع شدن Getting Started

شروع شدن Getting Started

  • کدگذاری: تبدیل یک طرح موجود به یک برنامه Real-Time FreeRTOS Coding : Converting an existing sketch to a FreeRTOS Real-Time application

  • کدگذاری: اشکال زدایی برنامه های بلادرنگ با پروفایلینگ Coding : Debugging Real-Time applications with Profiling

مقدمه ای بر FreeRTOS Introduction to FreeRTOS

مقدمه ای بر FreeRTOS Introduction to FreeRTOS

  • FreeRTOS چیست؟ What is FreeRTOS

  • ویژگی های FreeRTOS Features of FreeRTOS

  • نام های متغیر FreeRTOS FreeRTOS Variable Names

  • نام توابع FreeRTOS FreeRTOS Function Names

  • نام های ماکرو FreeRTOS FreeRTOS Macro Names

مدیریت کارها Task Management

مدیریت کارها Task Management

  • تابع وظیفه The Task Function

  • ایجاد یک وظیفه Creating a Task

  • کدگذاری: ایجاد وظایف Coding : Creating Tasks

  • کدگذاری: با استفاده از پارامترهای وظیفه Coding : Using Task Parameters

  • کدگذاری: آزمایش با اولویت های کار Coding : Experimenting with Task Priorities

  • کدگذاری: تغییر اولویت کار در زمان اجرا. Coding : Changing Task Priority at run-time.

  • کدگذاری: وظیفه تغییر اولویت خود است Coding : Task changing it's own priority

  • کدگذاری: دریافت اولویت کار Coding : Getting the Task Priority

  • کدگذاری: تعلیق یک کار Coding : Suspending a Task

  • کدگذاری: کار به حالت تعلیق در می آید Coding : Task suspending itself

  • کدگذاری: از سرگیری یک کار معلق Coding : Resuming a suspended Task

  • کدنویسی: مسدود کردن وظایف با vTaskDely() Coding : Blocking Tasks with vTaskDely()

مدیریت صف Queue Management

مدیریت صف Queue Management

  • مقدمه ای بر صف ها Introduction to queues

  • توابع مدیریت صف Queue management functions

  • کدگذاری: کار با صف Coding : Working with queues

  • کدگذاری: ارسال از وظایف مختلف به یک صف (قسمت اول) Coding : Sending from different Tasks to the same Queue (Part I)

  • کدگذاری: ارسال از وظایف مختلف به یک صف (قسمت دوم) Coding : Sending from different Tasks to the same Queue (Part II)

  • کدگذاری: ارسال ساختارها به صف (قسمت اول) Coding : Sending structures onto queues (Part I)

  • کدگذاری: ارسال ساختارها به صف (قسمت دوم) Coding : Sending structures onto queues (Part II)

مجموعه های صف Queue Sets

مجموعه های صف Queue Sets

  • مقدمه ای بر مجموعه های صف Introduction to Queue Sets

  • صف توابع مدیریت را تنظیم می کند Queue Sets management functions

  • کدگذاری: ایجاد مجموعه های صف (قسمت اول) Coding : Creating Queue Sets (Part I)

  • کدگذاری: ایجاد مجموعه های صف (قسمت دوم) Coding : Creating Queue Sets (Part II)

تایمرهای نرم افزاری Software Timers

تایمرهای نرم افزاری Software Timers

  • آشنایی با نرم افزار تایمر Introduction to software timers

  • توابع مدیریت تایمر Timer management functions

  • کدگذاری: ایجاد تایمرهای تک شات و بارگذاری مجدد خودکار Coding : Creating One-Shot and Auto-Reload Timers

  • کدگذاری: تعامل با چندین تایمر Coding : Interacting with multiple Timers

سمافورها Semaphores

سمافورها Semaphores

  • مقدمه ای بر سمافورهای باینری Introduction to Binary Semaphores

  • کدگذاری: ایجاد سمافورهای باینری (قسمت اول) Coding : Creating Binary Semaphores (Part I )

  • کدگذاری: ایجاد سمافورهای باینری (قسمت دوم) Coding : Creating Binary Semaphores (Part II )

  • مقدمه ای بر شمارش سمافورها Introduction to Counting Semaphores

  • کدگذاری: ایجاد یک سمافور شمارش (بخش اول) Coding : Creating a Counting Semaphore (Part I )

  • کدگذاری: ایجاد یک سمافور شمارش (بخش دوم) Coding : Creating a Counting Semaphore (Part II )

  • برخی از مفاهیم رایج Some common concepts

طرد متقابل Mutual Exclusion

طرد متقابل Mutual Exclusion

  • کدگذاری: ایجاد یک Mutex Coding : Creating a Mutex

دروازه بان The Gatekeeper

دروازه بان The Gatekeeper

  • کدگذاری: با استفاده از Gatekeepers (قسمت اول) Coding : Using Gatekeepers (Part I)

  • کدگذاری: با استفاده از Gatekeepers (قسمت دوم) Coding : Using Gatekeepers (Part II)

گروه های رویداد Event Groups

گروه های رویداد Event Groups

  • کدگذاری: ایجاد گروه های رویداد (قسمت اول) Coding : Creating Event Groups (Part I)

  • کدگذاری: ایجاد گروه های رویداد (قسمت دوم) Coding : Creating Event Groups (Part II)

  • کدنویسی: مدیریت 3 کار با یک گروه رویداد (قسمت اول) Coding : Managing 3 Tasks with an Event Group (Part I)

  • کدنویسی: مدیریت 3 کار با یک گروه رویداد (قسمت دوم) Coding : Managing 3 Tasks with an Event Group (Part II)

  • کدگذاری: همگام سازی وظایف با گروه های رویداد (قسمت اول) Coding : Synchronizing Tasks with an Event Groups (Part I)

  • کدگذاری: همگام سازی وظایف با گروه های رویداد (قسمت دوم) Coding : Synchronizing Tasks with an Event Groups (Part II)

مدیریت وقفه Interrupt Management

مدیریت وقفه Interrupt Management

  • کدگذاری: همگام سازی وظایف و وقفه های روال سرویس (بخش دوم) Coding : Syncing Tasks and Interrupt Service Routines (Part II)

  • کدگذاری: ارسال و دریافت از صف در یک ISR (قسمت اول) Coding : Sending and receiving from Queues in an ISR (Part I)

  • کدگذاری: ارسال و دریافت از صف در یک ISR (قسمت دوم) Coding : Sending and receiving from Queues in an ISR (Part II)

پیکربندی زمانبندی Configuring the Scheduler

پیکربندی زمانبندی Configuring the Scheduler

  • کدگذاری: آزمایش با "غیر پیشگیرانه" Coding : Experimenting with ' Non-Preemption '

مفاهیم عمومی RTOS: اصول General RTOS concepts: Fundamentals

مفاهیم عمومی RTOS: اصول General RTOS concepts: Fundamentals

  • RTOS چیست؟ What is an RTOS?

  • معیارهای عملکرد سیستم عامل های بلادرنگ Performance Metrics of Real Time Operating Systems

  • سیستم انتظار مشغول Busy Wait System

  • سیستم های چند رشته ای (با ISR) Multi-Threaded Systems (With ISRs)

  • سیستم های بلادرنگ Real-Time Systems

  • تهدید The Thread

  • طبقه بندی نخ ها Classification of Threads

مفاهیم عمومی RTOS: سیاست‌های زمان‌بندی و زمان‌بندی General RTOS concepts : The Scheduler and Scheduling policies

مفاهیم عمومی RTOS: سیاست‌های زمان‌بندی و زمان‌بندی General RTOS concepts : The Scheduler and Scheduling policies

  • برنامه ریز The Scheduler

  • طبقه بندی زمانبندی ها Classification of Schedulers

  • پیشدستی Preemption

  • معیارهای زمانبندی Scheduler Criteria

  • استفاده از CPU CPU Utilization

  • بهینه سازی الگوریتم زمان بندی Scheduling Algorithm Optimization

  • مروری بر الگوریتم های محبوب زمان بندی Overview of Popular Scheduling Algorithms

  • زمانبندی اولین خدمت (FCFS). First Come First Served (FCFS) Scheduler

  • زمانبندی دور رابین (RR). Round Robin (RR) Scheduler

  • زمانبند دور رابین (RR) (PART II) Round Robin (RR) Scheduler (PART II)

  • کوانتا Quanta

  • زمانبندی وزنی دور رابین (WRR). Weighted Round Robin (WRR) Scheduler

  • قطعات داخلی Round Robin Scheuler Internals of the Round Robin Scheuler

  • هسته The Kernel

نمایش نظرات

Udemy (یودمی)

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

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

آموزش Arduino FreeRTOS From Ground Up™: ساخت پروژه های بلادرنگ
جزییات دوره
8.5 hours
80
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
2,961
4.5 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Israel Gbati Israel Gbati

Embedded Firmware Engineer نام من اسرائیل است ، من بیش از 7 سال است که در فضای سیستم جاسازی شده تحقیق و کار می کنم. در Udemy ده ها هزار دانش آموز در سیستم های جاسازی شده با تمرکز بر موضوعاتی مانند برنامه نویسی Assembly ، طراحی سیستم عامل های زمان واقعی ، توسعه سیستم عامل و پردازش سیگنال دیجیتال آموزش داده ام. من قادر به آموزش این مباحث هستم زیرا در کارهای روزمره مفاهیمی را از این مباحث استفاده می کنم. به یکی از دوره های من بپیوندید و ببینید چطور پیش می رود. همیشه می توانید درخواست بازپرداخت کنید.

BHM Engineering Academy BHM Engineering Academy

آکادمی مهندسی قرن بیست و یکم