Introduction In embedded systems, responsiveness and timing precision are often critical. When a hardware event occurs — such as a GPIO edge, UART byte received,
Tag: RTOS
Real time operating system
The Polling Pattern in Embedded Systems
Introduction In many embedded systems, it’s not always possible — or practical — to use interrupts. Some peripherals don’t provide interrupt lines, others generate events
The Debouncing Pattern in Embedded Systems
Introduction Mechanical switches, buttons, and some sensors don’t produce clean, instantaneous transitions between ON and OFF states. Instead, they generate a series of rapid, unpredictable
Zephyr vs FreeRTOS: Choosing the Right RTOS for Your Project
When it comes to real-time operating systems (RTOS) in the embedded world, Zephyr and FreeRTOS stand out as two of the most prominent options. Both
FreeRTOS Interview questions
A Comprehensive Guide to RTOS Interview Questions for Embedded Systems Welcome to this detailed guide on Real-Time Operating System (RTOS) interview questions, specifically crafted for
STM32-Cube IDE-FreeRTOS Intertask Communication Part – 1
Queues Allows to pass more information between the tasks. Suspend task if tries to “put” to full queue or “get” from empty one. Semaphores are
STM32-Cube IDE-FreeRTOS Intertask Communication Part – 2
Queues Allows to pass more information between the tasks. Suspend task if tries to “put” to full queue or “get” from empty one. Semaphores are
STM32-Cube IDE-FreeRTOS Tasks
Task Tasks are implemented as C functions. The only thing special about them is their prototype, which must return void and take a void pointer
STM32-Cube IDE-FreeRTOS Memory Management
FreeRTOS uses a region of memory called Heap (into the RAM) to allocate memory for tasks, queues, timers , semaphores, mutexes and when dynamically creating
STM32-Cube IDE-FreeRTOS Code Generation using CubeMx
STM32CubeIDE is an advanced C/C++ development platform with peripheral configuration, code generation, code compilation, linking, and debug features. It is based on the Eclipse®/CDT framework