Course Outline
Strategies for embedded firmware development—including event loops with interrupts, RTOS implementation, and fully event-driven models. Overview of basic RTOS attributes. Introduction to FreeRTOS and the CMSIS RTOS v2 API.
Thread lifecycles. The FreeRTOS scheduler. Handling timing dependencies. Application of synchronization primitives: queues, semaphores, and mutexes. Interaction between RTOS tasks and hardware interrupts.
Practical Exercises:
1. Development of a FreeRTOS application using STM32CubeIDE. Focus on thread management, timing constraints, and configuration of threads and timers.
2. Progressive design of a realistic use case: implementing queues, semaphores, communication threads, application threads, and coordinating with interrupt handlers.
Requirements
Fundamental understanding of the C programming language and microcontroller architecture.
Testimonials (1)
Being able to ask for advanced subjects even if there were not planned initially.