Quality RTOS & Embedded Software

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


Which FreeRTOS Function To Use?

Posted by rog57 on March 11, 2013
After reading throught the FreeRTOS "A Guide..." I'm still unsure just the right way to implement what I'm needing to do, and hoping for some advice. It's fairly straightforward:

Task 1 runs every 30 seconds.
When Task 2 runs, I need to suspend just Task 1 (no other task) until Task 2 is complete.

What's the best way to do this?

Thank you for any tips on implementing this.

RE: Which FreeRTOS Function To Use?

Posted by rog57 on March 11, 2013
BTW - I should have noted that Task 2 runs non-scheduled (non-deterministic)

RE: Which FreeRTOS Function To Use?

Posted by Friedrich Lobenstock on March 11, 2013
If task 1 can be suspended at any time, then just
assign task 2 a higher priority and it will suspend
task 1 every time it runs.

RE: Which FreeRTOS Function To Use?

Posted by Richard Damon on March 12, 2013
It isn't totally clear what you mean, as, has been commented, if Task 2 has a higher priority than Task 1, then when ever task 2 is running task 1 is not (since FreeRTOS doesn't to my knowledge support multi-core processors). If what you mean is that every time you create a copy of Task2 with vTaskCreate or signal a semaphore/queue that Task2 is waiting on, you want Task 1 suspended until Task2 gets ready to end/block again, then use vTaskSuspend/Resume in Task2, with Task 1 as the target.

[ 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