Course Outline
Introduction
Understanding Real-Time Operating Systems (RTOS)
Learning the Concept of Multitasking in Embedded Systems
Overview of the FreeRTOS Kernel
Overview of the STM32 MCU Board
Setting Up the Development Environment
- Downloading and Installing All Required Software
- Setting Up the STM32 Firmware and Hardware
Understanding Task Management in RTOS
- Understanding Stack Memory and Task Stack Size
- Creating Your First Tasks
- Using Task Parameters
- Implementing Task Priorities
- Exploring Task States
- Implementing Delays
- Using the Idle Task Hook
- Deleting Tasks
Communicating Between Tasks
- Managing Queues
- Overview of Queues
- Using a Queue
- Managing Interrupts (Semaphores)
- Overview of Interrupts and Semaphores
- Writing an Interrupt Handler on FreeRTOS
- Using Semaphores to Synchronize Tasks with Interrupts
- Queuing within an Interrupt Service Routine
Managing Resources
- Using Mutexes
- Using Binary Semaphores
- Using Counting Semaphores
Managing Memory and Time
Learning the Internals of FreeRTOS
- Debugging and Performance Tools
- Kernel Internals
Creating a Blinking Board Using FreeRTOS
- Learning the GPIO pins on STM32
- Using Tasks to Blink an On-Board LED
- Turning the LED On/Off Using Queueing
- Turning the LED On/Off Using Interrupts
Troubleshooting
Closing Remarks
Requirements
- Familiarity with embedded systems
- Basic experience with C programming
Audience
- Engineers
- Engineering students
- Anyone interested in learning FreeRTOS
- Anyone interested in embedded systems
Testimonials
Exercises.
- Instytut Lotnictwa
I genuinely enjoyed the trainer knowledge.
Aaron Swift - ITW Hobart
I genuinely enjoyed the personalized.
- ITW Hobart
The trainer knew free rtos and was ope to answer our questions.
- ITW Hobart
Practical examples using STM systems and interesting subtleties in the CORTEX range