آموزش FreeRTOS از پایه روی پردازندههای ARM (بررسی شده)
✅ سرفصل و جزئیات آموزش
آنچه یاد خواهید گرفت:
- ساخت اپلیکیشنهای بلادرنگ چندوظیفهای (Multitask) با استفاده از FreeRTOS
- پورت کردن FreeRTOS به هر پردازنده ARM
- تسلط به ویژگیهای مدیریت تسک FreeRTOS
- تسلط به ویژگیهای مدیریت منابع FreeRTOS
- تسلط به ویژگیهای همزمانسازی تسک FreeRTOS
- تسلط به ویژگیهای مدیریت رویداد FreeRTOS
- محاسبه بهرهوری CPU یک RTOS
- درک اجزای داخلی کرنل RTOS
- پیادهسازی الگوریتمهای زمانبندی محبوب و توضیح آنها
- ارائه درس درباره کرنل بلادرنگ FreeRTOS
- تسلط به ویژگیهای مدیریت وقفه FreeRTOS
- تسلط به ویژگیهای مدیریت زمان FreeRTOS
- تسلط به ویژگیهای آمار ران تایم وقفه FreeRTOS
- ساخت پکیج پشتیبانی بورد از ابتدا
- درک زمانبندیهای نرخ یکنواخت
- درک زمانبندیهای اولین ورود، اولین خروج
- درک زمانبندی نوبت گردشی
- درک زمانبندیهای نوبت گردشی وزندار
- درک طراحی و معماری ARM
- درک ویژگیهای پشتیبانی سیستم عامل ARM
پیشنیازهای دوره
- STM32F411-NUCLEO
- نیازی به تجربه برنامهنویسی نیست - همه مواردی را که باید بدانید به شما آموزش میدهیم.
- ما از STM32CubeIDE که رایگان است استفاده خواهیم کرد.
توضیحات دوره
این دوره اصول سیستمهای بلادرنگ و نحوه ساخت اپلیکیشنهای بلادرنگ با استفاده از FreeRTOS، یکی از محبوبترین سیستم عاملهای بلادرنگ برای سیستمهای تعبیه شده را به شما آموزش میدهد. این دوره یک بررسی دقیق از ویژگیهای کرنل بلادرنگ FreeRTOS ارائه میدهد و آموزشی دقیق درباره APIs برای پیادهسازی ویژگیهای مختلف FreeRTOS فراهم میکند و سپس به ساخت حدود 50 پروژه بلادرنگ میپردازد.
این دوره نیازی به دانش قبلی درباره سیستمهای بلادرنگ و برنامهنویسی کاربردی ندارد. در پایان دوره شما باید قادر به ساخت اپلیکیشنهای بلادرنگ چندوظیفهای FreeRTOS باشید که از تمام ویژگیهای یک اپلیکیشن بلادرنگ مدرن (مانند سمافور، mutexes، پرچمهای رویداد، هوکها، صفها، mailboxes و غیره) استفاده کنند و عملکرد آنها را تست کنند. شما همچنین باید قادر باشید: بهرهوری CPU یک RTOS را محاسبه کنید، زمانبندیهای نرخ یکنواخت را درک کنید، FreeRTOS را به هر پردازنده ARM انتقال دهید، زمانبندیهای نوبت گردشی و زمانبندیهای نوبت گردشی وزندار، زمانبندیهای اولین ورود و اولین خروج را درک کنید، با اجزای داخلی کرنل RTOS آشنا شوید، الگوریتمهای زمانبندی محبوب را پیاده کرده و توضیح دهید. لطفاً نگاهی به برنامه کامل این دوره بیندازید.
چند نکته کلیدی دوره:
- ساخت اپلیکیشنهای بلادرنگ چندوظیفهای با FreeRTOS
- پورت کردن FreeRTOS به هر پردازنده ARM
- تسلط به ویژگیهای مدیریت تسک FreeRTOS
- تسلط به ویژگیهای مدیریت منابع FreeRTOS
- تسلط به ویژگیهای همزمانسازی تسک FreeRTOS
- تسلط به ویژگیهای مدیریت رویداد FreeRTOS
- محاسبه بهرهوری CPU یک RTOS
- درک اجزای داخلی کرنل RTOS
- پیادهسازی الگوریتمهای زمانبندی محبوب و توضیح آنها
- ارائه درس درباره کرنل بلادرنگ FreeRTOS
- تسلط به ویژگیهای مدیریت وقفه FreeRTOS
- ساخت پکیج پشتیبانی بورد از ابتدا
این دوره برای چه کسانی مناسب است؟
- اگر شما در سیستمهای تعبیه شده مبتدی مطلق هستید، این دوره را بگذرانید.
- اگر شما توسعهدهنده باتجربه در زمینه سیستمهای تعبیه شده هستید و میخواهید یاد بگیرید چگونه اپلیکیشنهای تعبیه شده را به طور حرفهای برای پردازندههای ARM توسعه دهید، این دوره را بگذرانید.
آموزش FreeRTOS از پایه روی پردازندههای ARM (بررسی شده)
-
سیستم عامل بلادرنگ (RTOS) چیست؟ 04:29
-
درک تغییر کانتکس 11:05
-
مقایسه RTOS با ISR و سیستمهای انتظار مشغول 11:06
-
مفهوم یک Thread 03:58
-
دانلود CubeIDE 04:16
-
راهاندازی STM32CubeIDE 07:25
-
نصب پکیجها 06:07
-
بررسی 17:17
-
کنوانسیونهای نامگذاری FreeRTOS 04:22
-
درک نامهای ماکرو FreeRTOS 02:34
-
کدنویسی - پیکربندی سیستم ما 30:21
-
بررسی توابع TaskCreate 03:03
-
کدنویسی - ایجاد تسکها 26:12
-
کدنویسی - ایجاد تسکها از سایر تسکها 02:42
-
کدنویسی - کار با توابع تسک 28:25
-
کدنویسی - درک اولویتهای تسک 07:56
-
کدنویسی - تغییر اولویت تسک در ران تایم 14:40
-
کدنویسی - خواندن اولویت یک تسک 04:02
-
کدنویسی - معلق کردن یک تسک 06:01
-
کدنویسی - از سرگیری تسک معلق 08:50
-
کدنویسی - خاتمه دادن به یک تسک 08:44
-
درک State های تسک 03:40
-
استفاده از State بلاک شده برای ایجاد تأخیرها 02:39
-
کدنویسی - بلاک کردن یک تسک 05:20
-
کدنویسی - اجرای تسکها به صورت دورهای 06:59
-
بررسی تسک Idle 04:34
-
کدنویسی - کار با تسک Idle 11:19
-
بررسی هوک Tick 02:00
-
درک صفها و مجموعه صفها 04:56
-
کدنویسی - کار با صفها 21:12
-
کدنویسی - بروزرسانی printf 06:02
-
کدنویسی - همزمانسازی تسکها با صفها 11:34
-
کدنویسی - ارسال داده پیچیدهتر با صفها 18:59
-
کدنویسی - کار با مجموعههای صف 15:36
-
درک سمافورها 08:04
-
کدنویسی - کار با سمافورهای باینری 22:45
-
کدنویسی - توسعه چند درایور - بخش 1 35:42
-
کدنویسی - توسعه چند درایور - بخش 2 08:25
-
کدنویسی - تست درایورها 14:25
-
کدنویسی - کار با Mutex 15:47
-
کدنویسی - کار با سمافورهای شمارشی 05:51
-
کدنویسی - پیادهسازی تسک Gatekeeper 09:38
-
بررسی تایمرهای نرمافزاری 04:54
-
کدنویسی - کار با تایمرهای نرمافزاری 13:45
-
کدنویسی - توقف تایمر بارگذاری مجدد خودکار در حین ران تایم 06:39
-
کدنویسی - دریافت داده از UART با استفاده از Polling 14:49
-
کدنویسی - تعامل با روتینهای سرویس وقفه (ISRs) 16:28
-
کدنویسی - دریافت پکت داده کامل 29:05
-
بررسی EventGroups 02:00
-
کدنویسی - تنظیم و خواندن EventBits در EventGroup 12:53
-
کدنویسی - EventGroup با Setters متعدد 10:58
-
کدنویسی - همزمانسازی تسکها با استفاده از EventGroups 11:43
-
بررسی نوتیفیکیشنهای تسک 02:54
-
کدنویسی - کار با نوتیفیکیشنهای تسک 13:01
-
درک زمانبندی FreeRTOS 03:45
-
کدنویسی - درک پیکربندی زمانبندی - فقط Preemption 10:51
-
کدنویسی - درک پیکربندی زمانبندی - اسلایس کردن شبه زمانی 05:26
-
آشنایی با CMSIS-RTOS 12:32
-
کدنویسی - ایجاد Threads با استفاده از CMSIS-RTOS2 APIs 16:38
-
کدنویسی - تغییر اولویتهای Thread با استفاده از CMSIS-RTOS2 APIs 06:28
-
کدنویسی - معلق کردن Threads با استفاده از CMSIS-RTOS2 APIs 06:52
-
کدنویسی - از سرگیری Threads با استفاده از CMSIS-RTOS2 APIs 05:40
-
کدنویسی - خاتمه دادن به Threads با استفاده از CMSIS-RTOS2 APIs 04:28
-
کدنویسی - قرار دادن Threads در State بلاک شده با استفاده از CMSIS-RTOS2 APIs 04:20
-
کدنویسی - ایجاد تایمرهای نرمافزاری با استفاده از CMSIS-RTOS2 APIs 09:15
-
کدنویسی - ایجاد Mutexes با استفاده از CMSIS-RTOS2 APIs 06:12
-
کدنویسی - ایجاد سمافورها با استفاده از CMSIS-RTOS2 APIs 08:52
-
کدنویسی - ایجاد صفهای پیام با استفاده از CMSIS-RTOS2 APIs 13:37
-
کدنویسی - ایجاد پرچمهای رویداد با استفاده از CMSIS-RTOS2 APIs 10:07
-
انتخابهای میکروکنترلر 01:08
-
بررسی بورد STM32F4-DISCOVERY 01:15
-
بررسی LaunchPad Tiva C مدل TM4C123 01:12
-
بررسی بورد STM32F4-NUCLEO 01:01
-
سایر کامپوننتها 00:51
-
دانلود Keil uVision 5 01:18
-
نصب Keil uVision 5 06:23
-
نصب پکهای بیشتر 01:46
-
نصب درایورهای Stellaris ICDI 06:20
-
بررسی Keil uVision 5 10:02
-
تغییر کامپایلر 01:53
-
تبدیل اپلیکیشن موجود به اپلیکیشن بلادرنگ FreeRTOS - بخش 1 09:04
-
نصب پکها برای RTOS 02:50
-
تبدیل اپلیکیشن موجود به اپلیکیشن بلادرنگ FreeRTOS (پایان) 09:22
-
FreeRTOS چیست؟ 01:16
-
ویژگیهای FreeRTOS 01:19
-
نامهای متغیر FreeRTOS 00:36
-
نامهای تابع FreeRTOS 00:58
-
نامهای ماکرو FreeRTOS 01:29
-
تابع تسک 01:09
-
ایجاد یک تسک 02:56
-
کدنویسی - ایجاد تسک 13:01
-
کدنویسی - ایجاد تسکها از سایر تسکها 02:53
-
کدنویسی - استفاده از پارامترهای تسک 12:18
-
کدنویسی - اولویتهای تسک 03:52
-
کدنویسی - تغییر اولویت تسک در ران تایم 06:35
-
کدنویسی - تغییر اولویت خود توسط تسک 05:47
-
کدنویسی - معلق کردن یک تسک 06:27
-
کدنویسی - تسکی که خودش را معلق میکند 01:26
-
کدنویسی - از سرگیری یک تسک معلق 07:31
-
ایجاد تأخیرهای کارآمد با ()vTaskDelay 04:28
-
کدنویسی - بلاک کردن تسکها با ()vTaskDelay 08:30
-
کدنویسی - دستیابی به اجرای دورهای با ()vTaskDelayUntil 06:19
-
کدنویسی - حذف تسکها 07:52
-
کدنویسی - ایجاد تسکها به صورت استاتیک - بخش 1 07:26
-
کدنویسی - ایجاد تسکها به صورت استاتیک - بخش 2 07:42
-
کدنویسی - ایجاد تسکها به صورت استاتیک - بخش 3 12:06
-
کدنویسی - تست با هندل بازگشت تسک 05:10
-
آشنایی با صفها 02:44
-
توابع مدیریت صف 05:14
-
آشنایی با مجموعه صفها 01:08
-
توابع مدیریت مجموعه صف 01:39
-
آشنایی با تایمرهای نرمافزاری 04:44
-
توابع مدیریت تایمر 05:46
-
آشنایی با سمافورهای باینری 04:46
-
آشنایی با سمافورهای شمارشی 03:16
-
برخی مفاهیم عمومی 01:30
-
کدنویسی - تابع هوک Idle 12:49
-
کدنویسی - تابع هوک Tick 05:58
-
تسک Cooperative Idle 05:46
-
کدنویسی - پیکربندی زمانبند به صورت پیشامدی 06:51
-
کدنویسی - پیکربندی زمانبند - اشتراکگذاری شبهزمانی 03:41
-
کدنویسی - تسلیم تسک 06:05
-
دانلود CubeIDE 04:16
-
راهاندازی STM32CubeIDE 07:25
-
نصب پکیجها 06:07
-
بررسی 17:17
-
کدنویسی - تست با تسکها و اولویتها 19:23
-
کدنویسی - دسترسی به درایورهای سختافزاری از Threads متعدد 21:22
-
کدنویسی - دسترسی به درایورهای سختافزاری از Threads متعدد با استفاده از MUTEX 05:19
-
کدنویسی - ایجاد Threads به صورت دستی 10:22
-
کدنویسی - ارسال نوتیفیکیشنها بین Threads 13:35
-
بررسی اسکیمای تخصیص Heap-1 02:34
-
بررسی Heap-2 و Heap-3 00:39
-
بررسی اسکیمای تخصیص Heap-4 03:43
-
درباره Heap-5 00:37
-
RTOS چیست؟ 02:30
-
متریکهای عملکرد سیستم عاملهای بلادرنگ 01:00
-
سیستم انتظار مشغول 01:35
-
سیستمهای Multi-Threaded (با ISRs) 02:45
-
سیستمهای بلادرنگ 01:02
-
نقشه استک و حافظه 03:36
-
Thread 02:21
-
طبقهبندی Threads 01:58
-
درون میکروکنترلر 02:38
-
حالتهای عملیاتی 02:44
-
اشارهگر استک سایه 02:26
-
استثناهای SVC 01:53
-
کدنویسی - ایجاد سرویسهای SVC - بخش 1 10:31
-
ایجاد سرویسهای SVC - بخش 2 03:14
-
کدنویسی - ایجاد سرویسهای SVC - بخش 3 07:34
-
ایجاد سرویسهای SVC - بخش 4 03:30
-
کدنویسی - ایجاد سرویسهای SVC - بخش 5 05:37
-
کدنویسی - ایجاد سرویسهای SVC - بخش 6 08:03
-
استثناهای PendSV 06:23
-
دستورالعملهای دسترسی انحصاری 03:50
-
SysTick 01:30
-
مقدمه 01:41
-
کدنویسی - راهاندازی پروژه 05:15
-
کدنویسی - تحلیل مستندات مرجع 10:29
-
کدنویسی - پیکربندی پین 05:59
-
کدنویسی: تست پیکربندی پین 00:45
-
کدنویسی - افزودن پایگاه زمانی 09:46
-
کدنویسی - کد بلاک کننده 08:02
-
کدنویسی - فریم استک استثنا - بخش 1 11:06
-
کدنویسی - فریم استک استثنا - بخش 2 08:54
-
کدنویسی - ایجاد فریمهای استک 07:18
-
کدنویسی - سوئیچینگ Threads 08:10
-
زمانبندی 02:46
-
فرآیند در مقابل Thread 02:44
-
طبقهبندی زمانبندیها 01:58
-
پیشامد 01:24
-
معیارهای زمانبندی 01:20
-
بهرهوری CPU 02:04
-
بهینهسازی الگوریتمهای زمانبندی 02:01
-
بررسی الگوریتمهای زمانبندی محبوب 01:03
-
زمانبندی اولین ورود و اولین خروج (FCFS) 07:18
-
زمانبندی نوبت چرخشی (RR) - بخش 1 08:45
-
زمانبندی نوبت چرخشی (RR) - بخش 2 04:53
-
کوانتا 04:24
-
زمانبندی نوبت چرخشی وزندار (WRR) Processing..
-
اجزای داخلی زمانبندی نوبت چرخشی 06:24
-
کرنل 00:46
-
کدنویسی - STM32F4_RTOS_BSP - بخش 1 06:24
-
کدنویسی - STM32F4_RTOS_BSP - بخش 2 08:37
-
کدنویسی - STM32F4_RTOS_BSP - بخش 3 05:58
-
STM32F4_RTOS_BSP - بخش 4 02:08
-
کدنویسی - STM32F4_RTOS_BSP - بخش 5 07:31
-
کدنویسی - STM32F4_RTOS_BSP - بخش 6 04:40
-
کدنویسی - تست STM32F4_RTOS_BSP - بخش 1 06:04
-
کدنویسی - تست STM32F4_RTOS_BSP - بخش 2 10:19
-
کدنویسی - تست STM32F4_RTOS_BSP - بخش 3 07:27
-
کدنویسی - نکات مربوط به STM432F4-NUCLEO 02:53
-
کدنویسی - بررسی TM4C TIVA-C BSP 10:43
-
راهاندازی STM32CubeMX 04:06
-
بررسی STM32CubeMX 09:00
-
بررسی STM32CubeMX - ادامه 02:48
-
چک کردن بروزرسانیها و سفتافزارها 02:01
-
بررسی پیکربندی جانبی 17:07
-
پروژه ورودی و خروجی CubeMX 10:29
-
پروژه وقفه خارجی CubeMX 07:27
مشخصات آموزش
آموزش FreeRTOS از پایه روی پردازندههای ARM (بررسی شده)
- تاریخ به روز رسانی: 1404/06/21
- سطح دوره:همه سطوح
- تعداد درس:200
- مدت زمان :23:29:26
- حجم :12.08GB
- زبان:دوبله زبان فارسی
- دوره آموزشی:AI Academy