Semaphores
The FreeRTOS Semaphores window displays detailed information about all available synchronization objects: mutexes and semaphores (counting, binary, and recursive). You can enable automatic refresh to update the list each time the processor is stopped. Each row represents one synchronization object.
![]() |
The functionality of each listed synchronization object parameter is described inside the following table:
Parameter name |
Description |
---|---|
Name |
Synchronization object name |
Address |
Synchronization object address |
Type |
Synchronization object type |
Size |
Number of owning tasks |
# Blocked Tasks |
The number of blocked tasks waiting for the synchronization object |
FreeRTOS must be configured appropriately to enable access to semaphore-related kernel data and each semaphore must be registered for winIDEA to be able to display it. As semaphores are internally implemented using queues, this configuration and registration is the same as for queues. See the help for the Queues window for details.
An example of semaphore registration:
…
xSemaphoreHandle semaphoreMutex;
semaphoreMutex = xSemaphoreCreateMutex();
vQueueAddToRegistry(semaphoreMutex, (portCHAR*)"semaphoreMutex");
…