Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem


Can returning senmarphore carry data

Posted by Anuradha on March 28, 2011
In FreeRTOS is there an API version of "xSemaphoreGiveFromISR" which will allow the semaphore to return some value to the function in which it is returning?
That is think of a function is waiting for, I2C Event interrupts. Once an event (may be EV5) occurs it can be identified by reading status registers, and when the semaphore returns from ISR can it carry the details of which event was occurred to the waiting function?

Does OpenRTOS has this facility?


RE: Can returning senmarphore carry data

Posted by Dave on March 28, 2011
Semaphores don't carry data. Queues and semaphores are really the same thing. You could then use a queue in place of the semaphore, and post the data value to the queue (using an ISR safe queue send function) instead of using the semaphore give function. At the other end your task can block on a queue read instead of a semaphore take to receive the data value.

[ Back to the top ]    [ About FreeRTOS ]    [ Privacy ]    [ Sitemap ]    [ ]

Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

NXP tweet showing LPC5500 (ARMv8-M Cortex-M33) running FreeRTOS.

Version 10.1.1 of the FreeRTOS kernel is available for immediate download. MIT licensed.

View a recording of the "OTA Update Security and Reliability" webinar, presented by TI and AWS.


FreeRTOS and other embedded software careers at AWS.

FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

Espressif ESP32

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers


STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS

Xilinx Microblaze and Zynq partner