مطالب پیشنهادی از سراسر وب

دوره تسلط بر RTOS - بررسی FreeRTOS و STM32Fx با اشکال زدایی

دسته بندی ها: آموزش های ویژه ، آموزش های یودمی (Udemy) ، آموزش میکروکنترلر ARM ، آموزش اینترنت اشیاء (IOT)

دوره کامل FreeRTOS با برنامه نویسی و اشکال زدایی

آنچه یاد خواهید گرفت:

  • آشنایی با مفاهیم مختلف RTOS با برنامه نویسی و اشکال زدایی FreeRTOS
  • یادگیری کامل با روش گام به گام برای اجرای FreeRTOS در STM32
  • MCUs که از Workbench System OpenSTM32 استفاده می کنند
  • استفاده از STM32 Standard Peripheral Driver APIs برای پیکربندی peripherals
  • زمان بندی، ایجاد و حذف FreeRTOS Task با استفاده از نمونه کد
  • سیاست های مهم زمانبندی FreeRTOS Scheduler
  • FreeRTOS Stack و Heap Management
  • راه های درست همزمان سازی بین تسک ها با استفاده از Semaphores
  • راه های درست همزمان سازی بین یک تسک و وقفه با استفاده از Semaphores
  • همزمان سازی بین چندین رویداد و یک تسک
  • مدیریت صف های FreeRTOS مانند ایجاد، ارسال، دریافت، مسدود کردن و غیره
  • اجرای حذف متقابل بین تسک ها با استفاده از سرویس های Mutex و semaphores
  • درک کردن Context Switching با جزئیات توضیحات کد
  • درک کدهای خاص معماری مانند SVC_handler ، PendSV_handler ، SysTick Handler به صورت خط به خط
  • یادگیری در مورد kernel Tick timer، اهمیت آنها، فرکانس kernel tick و جزئیات پیکربندی آن
  • درک کامل مدل FreeRTOS Priority و ARM Cortex M و اطلاعات مربوط به پیکربندی آن
  • اشکال زدایی FreeRTOS با استفاده از نرم افزار SEGGER SystemView
  • تعداد زیادی مقاله که به صورت خط به خط کدهای اختصاصی معماری FreeRTOS مربوط به ARM Cortex M را توضیح می دهند
  • دستورالعمل های با قدرت کم از یک case در سناریوی FreeRTOS استفاده می کنند
  • بسیاری از تمرین های برنامه نویسی
  • اشکال زدایی با کیت ابزار نرم افزار SEGGER با گرفتن عکس فوری و ضبط حالت مداوم

پیش نیازها

  • دانش پایه سی شارپ و میکروکنترلر می تواند یک مزیت باشد اما اجباری نیست.

توضیحات دوره:

آخرین بروزرسانی: اشکال زدایی RTOS با استفاده از ابزار SEGGER SystemView Trace. همچنین Peripheral APIs و مثال های بیشتری اضافه شده است.

این دوره برای افراد مبتدی که می خواهند سطح خود را به پیشرفته برسانند مناسب است.

بزرگترین هدف این دوره، درک واضح RTOS به صورت عملی با استفاده از FreeRTOS و STM32 MCUs است.

این دوره به صورت گام به گام پورت/اجرای FreeRTOS با استفاده از راه اندازی توسعه را نشان می دهد که شامل موارد زیر است:

  • Eclipse + STM32F4xx + FreeRTOS + SEGGER SystemView
  • FreeRTOS+Simulator (برای ویندوز)

درک واضح کد مربوط به معماری کامل (ARM Cortex M) در FreeRTOS که به شما کمک می کند تا این kernel را در هر سخت افزار هدف مورد نظر شما اعمال گردد.

برد توسعه مورد استفاده در این دوره:

اگر هم اکنون برد توسعه مبتنی بر STM32 را دارید از همان استفاده کنید. این دوره از برد NUCLEO-F446RE مبتنی بر STM32F446RE MCU استفاده می کند.

نرم افزار مورد استفاده در این دوره:

  • OpenSTM32 System Workbench که بر روی تمام پلتفرم های سیستم عامل (ویندوز، لینوکس و OSX) - رایگان
  • نرم افزار SEGGER Systemview - نسخه رایگان

FreeRTOS+ Simulator

آیا سخت افزاری دارید؟ شما می توانید برخی از کدهای منبع این دوره را با استفاده از FreeRTOS simulator برای ویندوز امتحان کنید.

این دوره تمام مراحل مورد نیاز برای اجرای freeRTOS در حالت Simulator را مستند سازی کرده است بنابراین می توانید در هر زمان بر روی رایانه شخصی خود راه اندازی کنید. تمام آنچه شما نیاز دارید فقط نرم افزار Eclipse و PC است. 

اطلاعات سیستم عامل

WIN/MAC/UBUNTU

اشکال زدایی FreeRTOS با نرم افزار SEGGER SYSVIEW

در این دوره اشکال زدایی freeRTOS با نرم افزار SEGGER Systemview با راهنمایی گام به گام پوشش داده شده است.

اشکال زدایی و آزمون های درج شده 

اشکال زدایی در کد تعبیه شده بسیار جالب است و یادگیری تکنیک ها و ویژگی های اشکال زدایی مختلف برای دستیابی خوب به اشکال زدایی تعبیه شده بسیار ضروری است. همچنین، این دوره شامل سؤالات مصاحبه گوناگونی است که دانش شما به را تست می کند!

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

  • متخصصان علاقمند به کاوش در سیستم های تعبیه شده (Embeded systems)
  •  دانشجویانی که می خواهند کار خود را در دنیای تعبیه شده شروع کنند
  • دانش آموزان مبتدی و سطح متوسط RTOS
  • اگر به "تعبیه شده" فکر می کنید، پس به این دوره فکر کنید. ناامید نخواهی شد

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

  • بررسی دوره
    • یادداشت مهم
    • این دوره در کل درباره چیست؟
    • پرسش و پاسخ
    • یادداشتی برای دانش جویان
  • معرفی RTOS 
    • (Real Time Application (RTAs چیست؟
    • (Real Time Operating System (RTOS چیست؟
    • RTOS درمقابل GPOS - زمانبندی تسک
    • RTOS درمقابل GPOS - تاخیر
    • RTOS درمقابل GPOS - وارونگی اولویت
    • Multitasking چیست؟
  • برد توسعه مورد استفاده در این دوره
    • یادداشتی برای دانش جویان
    • درباره برد توسعه MCU
    • بررسی STM32F4 و Nucleo - جزئیات برد
    • نصب درایور ST-Link
    • ارتقای سفت افزار ST Link 
  • نصب IDE (بررسی OpenSTM32 System Workbench)
    • دانلود Open STM32 System Workbench
    • نصب کردن Open STM32 System Workbench
  • دانلود و نصب FreeRTOS
    • دانلود کردن FreeRTOS از freertos.org
    • نصب کردن FreeRTOS
  • ایجاد پروژه مبتنی بر FreeRTOS برای STM32 MCUs
    • ایجاد پروژه مبتنی بر FreeRTOS برای STM32 MCUs - بخش 1
    • ایجاد پروژه مبتنی بر FreeRTOS برای STM32 MCUs - بخش 2
    • رفع خطای دانلود SPL
    • ایجاد پروژه مبتنی بر FreeRTOS برای STM32 MCUs - ادامه ی بخش 2 
    • ایجاد پروژه مبتنی بر FreeRTOS برای STM32 MCUs - بخش 3 
    • ایجاد پروژه مبتنی بر FreeRTOS برای STM32 MCUs - بخش 4 
    • ایجاد پروژه مبتنی بر FreeRTOS برای STM32 MCUs - بخش 5 
    • درک متغیر "SystemCoreClock"
  • ایجاد تسک FreeRTOS 
    • تسک چیست؟
    • بررسی Task Create API
    • FreeRTOS پشت صحنه Task Creation
    • بررسی Test Drive
  • اپلیکیشن FreeRTOS Hello World و تست بر روی سخت افزار
    • تمرین: مقدمه
    • تمرین: درک پیکربندی MCU clock - بخش 1
    • تمرین: درک پیکربندی MCU clock - بخش 2
    • تمرین: ایجاد تسک های FreeRTOS - بخش 1
    • تمرین: ایجاد تسک های FreeRTOS - بخش 2
    • تمرین: تست کردن از طریق debugger - بخش 1
    • تمرین: تست کردن از طریق debugger - بخش 2
  • Semi hosting و راه اندازی UART
    • درک امکانات ARM Semi-hosting
    • استفاده از MCU peripherals و پیاده سازی کدهای اولیه 
    • جدول پیکربندی پین MCU و اتصال UART VCP
    • پیکربندی پین UART با استفاده از STD. Periph. Libray APIs
    • تمرین: UART Parameter Inits
    • تمرین: پیاده سازی UART Printmsg با استفاده از std periph. libary
    • تمرین: تست کردن UART prints
    • تمرین: تست کردن اپلیکیشن hello world از طریق UART
    • تمرین: کاربرد ()taskYIELD و توضیح
  • اشکال زدایی اپلیکیشن FreeRTOS با ابزارهای SEGGER SystemView
    • یادداشتی برای فصل بعدی
    • دانلود نرم افزار SEGGER SystemView
    • نصب SEGGER SystemView و نگاهی به آن
    • SEGGER SystemView چیست؟
    • حالت های مجازی سازی SEGGER SystemView
    • آماده سازی ادغام SEGGER SystemView Target
    • ادغام گام به گام SEGGER SystemView Target
    • بهره گیری SEGGER SystemView از FreeRTOS trace با snapshot mode
    • دانلود SEGGER SystemView jlink reflash utility
    • بهره گیری SEGGER SystemView از FreeRTOS trace با ضبط مداوم 
    • تحلیل trace - بررسی
    • تحلیل اپلیکیشن FreeRTOS helloword با SystemView Trace
  • IDLE Task و Timer Svc Task در FreerRTOS
    • IDLE task و اهمیت آن
    • FreeRTOS Timer Services task و دیگر جزئیات آن
  • FreeRTOS Scheduler
    • ​​​​​​​بررسی FreeRTOS Scheduler
    • توضیح FreeRTOS Scheduler و xTaskStartScheduler() API
    • درک پیاده سازی xPortStartScheduler() of port.c
  • FreeRTOS و ARM Cortex Mx Arch - جزئیات مهم
    • ​​​​​​​وقفه های FreeRTOS Kernel
    • توضیح RTOS Tick و SysTick Timer
    • چه کسی RTOS Tick Timer را پیکربندی می کند؟
    • (RTOS Tick ISR (SysTick ISR چه کاری انجام می دهد؟ خلاصه
  • Context switching
    • ​​​​​​​معرفی context switching
    • context switching - درک "State" یک تسک
    • context switching - تسک سوئیچینگ از روند با انیمیشن
    • context switching - درک کردن pendSV handler code
    • درک کردن SystemView trace در زمانیکه preemption خاموش است
    • Test Drive
  • تمرین - دکمه و LED Task و کدنویسی Interrupt 
    • ​​​​​​​تمرین: دکمه و LED task
    • ​​​​​​​تمرین: افزودن منبع FreeRTOS به پروژه
    • ​​​​​​​تمرین: ایجاد تسک دکمه و  LED task
    • ​​​​​​​تمرین: کد پیکربندی GPIO 
    • ​​​​​​​تمرین: ادامه ی کد پیکربندی GPIO 
    • ​​​​​​​تمرین: پیاده سازی Task handler و تست بر روی تارگت
    • ​​​​​​​تمرین: کار با task و interrupt
    • درک کردن تحویل وقفه های GPIO در STM32 MCUs
    • ​​​​​​​تمرین: LED task و پیاده سازی کد مدیریت وقفه Button
    • درک کردن رد وقفه دکمه و اجرای led task
  • نوتیفیکیشن FreeRTOS Task
    • ​​​​​​​مقدمه Task Notify با تمرین
    • ()Task notification APIs و xTaskNotifyWait
    • استفاده از ()xTaskNotifyWait در کد
    • نوتیفیکیشن های Task - بررسی ()xTaskNotify
    • درک کردن Task notification trace
  • مدل لایسنس FreeRTOS و رابط API 
    • ​​​​​​​بررسی freertos-licensing
    • رابط FreeRTOS API
  • بررسی مدیریت مموری FreeRTOS، سرویس های همزمان سازی و STACK 
    • ​​​​​​​بررسی مدیریت مموری FreeRTOS
    • مدیریت Heap و Stack در FreeRTOS
    • بررسی هم زمان سازی FreeRTOS و سرویس های حذف متقابل
    • Test Drive
  • استایل کدنویسی FreeRTOS Kernel
    • ​​​​​​​Macros
    • متغیرها
    • توابع
  • حذف تسک FreeRTOS 
    • ​​​​​​​حذف تسک
    • تمرین: حذف تسک
    • تمرین: پیاده سازی کردن حذف تسک
  • ARM Cortex M Interrupt Priority و FreeRTOS Task Priority
    • ​​​​​​​آیتم های قابل پیکربندی وقفه سخت افزار FreeRTOS
    • ادامه ی ​​​​​​​آیتم های قابل پیکربندی وقفه سخت افزار FreeRTOS
    • اولویت تسک های freeRTOS
    • بررسی FreeRTOS priority Set/Get APIs
    • تمرین: Task Priority
    • تمرین: پیاده سازی و تست کردن Task Priority
    • تمرین: Task Priority درواقع trace را تحلیل می کند
    • Test Drive
  • Interrupt safe APIs و Task yielding
    • ​​​​​​​interrupt unsafe APIs و interrupt safe APIs
    • درک کردن Task Yielding
    • Test Drive
  • FreeRTOS Task States
    • ​​​​​​​اجرا کردن و اجرا نکردن state
    • Ready state
    • Blocked state
    • Suspended state
    • Test Drive
  • FreeRTOS - اهمیت  Delay APIs
    • ​​​​​​​Crude delay و تاثیرات آن
    • استفاده از Blocked" state" برای ایجاد تاخیر
    • تمرین: معرفی ()vTaskDelay
    • تمرین: پیاده سازی ()vTaskDela 
    • تمرین: تحلیل ()vTaskDel با trace  
    • Test Drive
  • توابع FreeRTOS Hook
    • ​​​​​​​توابع FreeRTOS Hook
    • تابع Tick hook و دستورالعمل فعلی صرفه جویی
    • Test Drive
  • سیاست های زمان بندی FreeRTOS 
    • ​​​​​​​زمان بندی Preemptive 
    • زمان بندی Preemptive اولویت بندی شده
    • زمان بندی Co-operative
  • مدیریت صف FreeRTOS ​​​​​​​
    • ​​​​​​​صف ها و امکانات آنها
    • ایجاد صف
    • ارسال داده به صف
    • دریافت داده از صف
    • تمرین: اپلیکیشن پردازش فرمان FreeRTOS 
    • تمرین: پیاده سازی Task 
    • ایجاد Command Queue
    • ایجاد کردن UART write Queue
    • کدنویسی برای تنظیمات وقفه UART
    • پیاده سازی UART ISR
    • پیاده سازی menu print task
    • پیاده سازی UART write task
    • کدنویسی UART ISR
    • پیاده سازی کردن تسک مدیریت کردن فرمان
    • پیاده سازی کردن تسک پردازش کردن فرمان
    • پیاده سازی تابع helper پردازش کردن فرمان
    • بررسی Software timers discussion
    • ادامه ی بررسی Software timers discussion
    • حل کردن race condition بین task و ISR
    • آزادسازی مموری و تست کردن RTC 
    • تست کردن کامل اپلیکیشن
    • Test Drive
  • Semaphore برای همزمان سازی، حذف متقابل، مدیریت وقفه
    • ​​​​​​​همزمان سازی و حذف متقابل در دنیای واقعی
    • ایجاد کردن سمافور
    • انواع مختلف سمافور
    • سمافور باینری برای همزمان سازی بین دو تسک
    • تمرین: همزمان سازی بین 2 تسک
    • سمافور باینری برای همزمان سازی بین تسک و وقفه
    • بررسی Events latching
    • شمارش semaphore برای latch کردن و پردازش چندین رویداد
    • تمرین: همزمان سازی یک تسک و چندین رویداد
  • حذف متقابل
    • ​​​​​​​حذف متقابل با استفاده از سمافور باینری
    • تمرین: حذف متقابل بین 2 تسک با استفاده از سمافور باینری
    • مسئله با Binary sema در زمانی که برای حذف متقابل استفاده می شود
    • مزایای Mutex Over Binary Semaphore
    • تمرین کد - 16 مثال Mutex 
    • یک روش Crude برای محافظت از یک بخش مهم
    • Test Drive
  • FreeRTOS+Simulator
    • ​​​​​​​کار با simulator با استفاده از FreeRTOS Win32 Port
  • نکته اضافی
    • ​​​​​​​نکات اضافی

سایر ویدئوهای دوره:

 RTAs اپلیکیشن بلادرنگ چیست؟

 

RTOS سیستم اجرای بلادرنگ چیست؟

 

زمان بندی تسک GPOS درمقابل RTOS

 

تاخیر GPOS درمقابل RTOS

 

وارونگی اولویت GPOS درمقابل RTOS

 

Multitasking چیست؟

آیا این نوشته را دوست داشتید؟
Mastering RTOS: Hands on FreeRTOS and STM32Fx with Debugging Publisher:udemy Author:FastBit Embedded Brain Academy, Bharati Software Duration:15 hours

What you'll learn

  • Understanding various RTOS concepts with FreeRTOS Programming and Debugging
  • Learn Complete Step by step method to run FreeRTOS on STM32 MCUs using OpenSTM32 System Workbench
  • Using STM32 Standard Peripheral Driver APIs to configure peripherals
  • FreeRTOS Task Creation , Deletion, Scheduling using with code examples
  • Important scheduling policies of FreeRTOS Scheduler
  • FreeRTOS Stack and Heap Management
  • Right ways of Synchronizing between tasks using Semaphores.
  • Right ways of Synchronizing between a task and an interrupt using semaphores
  • Synchronization between multiple events and a task
  • FreeRTOS Queue management like creation, sending, receiving, blocking, etc
  • Implementing mutual exclusion between Tasks using Mutex services and semaphores
  • Understanding Context Switching with in detail code explanation
    Understanding Architecture specific codes like SVC_handler, PendSV_handler, SysTick Handler line by line
  • You will learn about kernel Tick timer, its importance, the kernel tick frequency and its configuration details.
  • Understanding complete ARM Cortex M and FreeRTOS Priority model and its configuration related informations
  • FreeRTOS Debugging using SEGGER SystemView Software
  • Lots of articles which explains line by line the ARM Cortex M related FreeRTOS architecture specific codes
  • Low power instructions use case in FreeRTOS scenario
  • Lots of coding exercises
  • Debugging with SEGGER software toolkit by taking snapshot and continuous mode recording

Requirements

  • Basic knowledge of C and Micro controller could be added advantage but not mandatory

Description

>> The Complete FreeRTOS Course with Programming and Debugging <<

Latest update: RTOS debugging using SEGGER SystemView Trace tools, STM32 STD. Peripheral APIs and More examples are added.

Subtitles(CCs) and transcripts are available for this course.

Dedicated Support team to answer Q/A

The course is designed for Beginners to Advanced audience.

Short Description:

"The Biggest objective of this course is to demystifying RTOS practically using FreeRTOS and STM32 MCUs"

STEP-by-STEP guide to port/run FreeRTOS using development setup which includes,

1) Eclipse + STM32F4xx + FreeRTOS + SEGGER SystemView

2) FreeRTOS+Simulator (For windows)

Demystifying the complete Architecture (ARM Cortex M) related code of FreeRTOS which will massively help you to put this kernel on any target hardware of your choice.

Development board used in this course:

If you already have an STM32 Based development board, then please continue using the same. The course uses STM32F446RE MCU based NUCLEO-F446RE board.

Software used in this course:

1) OpenSTM32 System Workbench which can run on all OS platforms(WIN/OSX/LINUX) (free)

2) SEGGER Systemview software free edition

FreeRTOS+ Simulator

Don't have any hardware? You can still try some of the Source code of this course using the FreeRTOS simulator for windows.

In this course, I have documented all the steps required to run freeRTOS in Simulator mode, so you can set up on your PC in no time. All you need is just PC and Eclipse software. That's it!

Operating system information

WIN/MAC/UBUNTU

Debugging FreeRTOS with SEGGER SYSVIEW software

In this course debugging freeRTOS with SEGGER Systemview software is covered with STEP-BY-STEP guidance. please watch the preview videos.

Embedded Debugging and Quizzes

Debugging embedded code is really interesting and learning various debugging techniques and features are very much essential to have a good grip on embedded debugging.

Also, the course consists of various interview questions which will test your knowledge gained !.

Who this course is for:

  • Professionals interested in exploring Embedded systems
  • Hobbyists and students who want to start their career in Embedded world
  • RTOS Beginners and Intermediate students
  • If you think about 'embedded' then think about taking this course. you will not be disappointed

Course content

  • Overview of the course
    • Important Note
    • What is this course all about ??
    • FAQ
    • Note for the Students
  • RTOS Introduction
    • What is Real Time Application(RTAs) ??
    • What is Real Time Operating System(RTOS) ?
    • RTOS vs GPOS : Task Scheduling
    • RTOS vs GPOS : Latency
    • RTOS vs GPOS : Priority inversion
    • What is Multitasking ?
  • Development board used in our courses
    • Note for the students
    • About MCU Development board
    • STM32F4 Discovery and Nucleo : Board Details
    • ST-Link Driver Installation
    • ST Link Firmware Upgrade
  • IDE install (OpenSTM32 System Workbench)
    • Downloading Open STM32 System Workbench
    • Installing Open STM32 System Workbench
  • Downloading and Installing FreeRTOS
    • Downloading FreeRTOS From freertos.org
    • Installing FreeRTOS
  • Creating FreeRTOS based project for STM32 MCUs
    • Creating FreeRTOS based project for STM32 MCUs Part-1
    • Creating FreeRTOS based project for STM32 MCUs Part-2
    • SPL download error fix
    • Creating FreeRTOS based project for STM32 MCUs Part-2 contd.
    • Creating FreeRTOS based project for STM32 MCUs Part-3
    • Creating FreeRTOS based project for STM32 MCUs Part-4
    • Creating FreeRTOS based project for STM32 MCUs Part-5
    • Understanding "SystemCoreClock" variable
  • FreeRTOS Task Creation
    • What is task ?
    • Task Create API
    • Scheduling of Tasks
    • FreeRTOS behind the scene Task Creation
    • Test Drive
  • FreeRTOS Hello World App and Testing on hardware
    • Exercise : Introduction
    • Exercise : Understanding MCU clock configuration Part-1
    • Exercise : Understanding MCU clock configuration Part-2
    • Exercise : Creating FreeRTOS Tasks Part-1
    • Exercise : Creating FreeRTOS Tasks Part-2
    • Exercise : Testing via debugger Part-1
    • Exercise : Testing via debugger Part-2
  • Semi hosting and UART setup
    • Understanding ARM Semi-hosting feature
    • Using MCU peripherals and implementing initialization codes
    • MCU pin configuration table and UART VCP connection
    • UART pin configuration using STD. Periph. Libray APIs
    • Exercise : UART Parameter Inits
    • Exercise : UART Printmsg implementation using std periph. libary
    • Exercise : Testing UART prints
    • Exercise : Testing our hello world application over UART
    • Exercise : Usage of taskYIELD() and explanation
  • FreeRTOS app debugging using SEGGER SystemView Tools
    • Note for Next lecture
    • Downloading SEGGER SystemView Software
    • SEGGER SystemView Installation and first look
    • What is SEGGER SystemView ?
    • SEGGER SystemView visualization modes
    • SEGGER SystemView Target integration preparation
    • SEGGER SystemView Target integration step by step
    • SEGGER SystemView taking FreeRTOS trace using snapshot mode
    • SEGGER SystemView jlink reflash utility download
    • SEGGER SystemView taking FreeRTOS trace using Continuous recording
    • Analyzing the trace : An Overview
    • Analyzing FreeRTOS helloword application using SystemView Trace
  • IDLE Task and Timer Svc Task of FreerRTOS
    • IDLE task and its significance
    • FreeRTOS Timer Services task and other details
  • FreeRTOS Scheduler
    • Overview of FreeRTOS Scheduler
    • FreeRTOS Scheduler and xTaskStartScheduler() API explanation
    • Understanding implementation of xPortStartScheduler() of port.c
  • FreeRTOS and ARM Cortex Mx Arch. Specific details
    • FreeRTOS Kernel interrupts
    • RTOS Tick and SysTick Timer explanation
    • Who configures the RTOS Tick Timer ?
    • What RTOS Tick ISR (SysTick ISR) does ? summary
  • Context switching
    • Introduction to context switching
    • Context Switching : understanding "State" of a Task
    • Context Switching : Task Switching out procedure with animation
    • Context switching : understanding pendSV handler code
    • Understanding SystemView trace when preemption is off
    • Test Drive
    • Test Drive
  • Exercise : Button and LED Task and Interrupt Coding
    • Exercise : Button and LED task
    • Exercise: Adding FreeRTOS source to project
    • Exercise : Task create of button and LED task
    • Exercise : GPIO configuration code
    • Exercise : GPIO configuration code cntd.
    • Exercise : Task handler implementation and testing on the target
    • Exercise : working with task and interrupt
    • Understanding GPIO Interrupts delivery in STM32 MCUs
    • Exercise : LED task and Button interrupt handling code implementation
    • Understanding Trace of button interrupt and led task execution
  • FreeRTOS Task Notification
    • Task Notify Introduction with exercise
    • Task notification APIs and xTaskNotifyWait()
    • using xTaskNotifyWait() in the code
    • Task notifications : xTaskNotify()
    • Understanding Task notification trace
  • FreeRTOS Licensing model and API interface
    • freertos-licensing
    • FreeRTOS API Interface
  • Overview of FreeRTOS Memory manage, STACK and Synchronization services
    • Overview of FreeRTOS Memory Management
    • FreeRTOS Heap and Stack Management
    • Overview of FreeRTOS Synchronization and mutual exclusion Services
    • Test Drive
  • FreeRTOS Kernel Coding Style
    • Macros
    • Variables
    • Functions
  • FreeRTOS Task Deletion
    • Deleting a Task
    • Exercise : Task Delete
    • Exercise : Task Delete Implementation
  • ARM Cortex M Interrupt Priority and FreeRTOS Task Priority
    • FreeRTOS Hardware interrupt Configurable items
    • FreeRTOS Hardware interrupt Configurable items contd.
    • Priority of freeRTOS Tasks
    • FreeRTOS priority Set/Get APIs
    • Exercise : Task Priority
    • Exercise : Task Priority Implementation and testing
    • Exercise : Task Priority analyzing the trace
    • Test Drive
  • Interrupt safe APIs and Task yielding
    • Interrupt safe and interrupt unsafe APIs.
    • Understanding Task Yielding
    • Test Drive
  • FreeRTOS Task States
    • Running and Not Running state
    • The Ready state
    • The Blocked state
    • Suspended state
    • Test Drive
  • FreeRTOS : Importance of Delay APIs
    • Crude delay and its Effects
    • Using "Blocked" state to create delay
    • Exercise : vTaskDelay() Introduction
    • Exercise : vTaskDelay() Implementation
    • Exercise : vTaskDelay() analyzing with trace
    • Test Drive
  • FreeRTOS Hook Functions
    • FreeRTOS Hook functions
    • Tick hook function and Current saving instructions
    • Test Drive
  • FreeRTOS Scheduling Policies
    • Preemptive Scheduling
    • Prioritized Preemptive Scheduling
    • Co-operative Scheduling
  • FreeRTOS Queue Management
    • Queues and its features
    • Creating a Queue
    • Sending data to Queue
    • Receiving data from Queue
    • Exercise : FreeRTOS Command Processing app
    • Exercise : Task Implementation
    • Creation of Command Queue
    • Creation of UART write Queue
    • Coding for UART interrupt settings
    • UART ISR implementation
    • Implementing menu print task
    • Implementing UART write task
    • UART ISR coding
    • Implementation of command handling task
    • Implementation of command processing task
    • Command processing helper function implementation
    • Software timers discussion
    • Software timers discussion contd.
    • Solving race condition between task and ISR
    • Memory freeing and RTC testing
    • Full Application testing
    • Test Drive
  • Semaphore for Synchronization, mutual exclusion and Interrupt Management
    • Synchronization and Mutual exclusion in real world
    • Creation of a semaphore
    • Different types of semaphores
    • Binary semaphore to synchronize between two Tasks
    • Exercise: Synchronization between 2 Tasks
    • Binary Semaphore to synchronize between task and Interrupt
    • Events latching
    • counting semaphore to latch and process multiple events
    • Exercise : Synchronizing a Task and Multiple Events
  • Mutual exclusion
    • Mutual Exclusion using Binary Semaphore
    • Exercise :Mutual Exclusion between 2 tasks using Binary Semaphore
    • Issue with Binary sema when used for Mutual exclusion
    • Advantages of Mutex Over Binary Semaphore
    • Code Exercise - 16: Mutex Example
    • Crude way to protect critical section
    • Test Drive
  • FreeRTOS+Simulator
    • Working with simulator using FreeRTOS Win32 Port
  • BONUS LECTURE
    • BONUS LECTURE

پیشنهاد آموزش مرتبط در فرادرس

خرید لینک های دانلود
  • حجم فایل: 7.53GB
  • زبان: انگلیسی
  • زیرنویس انگلیسی: دارد
  • قیمت: 8000 تومان
  • دوره تسلط بر RTOS - بررسی FreeRTOS و STM32Fx با اشکال زدایی یک محصول ویژه است و دریافت لینک های دانلود آن با پرداخت هزینه امکان پذیر است. اطلاعات بیشتر

Abol 3 هفته و 2 روز قبل

زیرنویس انگلیسی داره؟

مونا شوشتری 2 هفته و 2 روز قبل

بله.