Quality RTOS & Embedded Software

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


Periodic Task in FreeRTOS

Posted by Walid Kort on April 1, 2010
I think about how i can create a periodic task in FreeRTOS without using Mutex or Semaphors or Interrupts
and i thought about modify the Kernel to implement new API that manage periodic task automatcly.
If any one have an idea, think's for help me.

RE: Periodic Task in FreeRTOS

Posted by Adam Turowski on April 1, 2010
What you mean by "periodic task"? The task which does something periodically? If this is the case, you can create such task and used TaskDelay() or TaskDelayUntil() calls to block the task until it is time for it to execute.

RE: Periodic Task in FreeRTOS

Posted by Walid Kort on April 1, 2010
a preiodic task is a task that execute one time each periode.
i have used TaskDelay() and TaskDelayUntil() but it does not work properly when i create many tasks.

i have begins modification in kernel to implement new API that creates a periodic task. So we can simply call the API with desired periodicity parameter and the task is executed periodicly.

RE: Periodic Task in FreeRTOS

Posted by Adam Turowski on April 1, 2010
Please remember that even in multitasking systems only one task is executed at a particular time. TaskDelay() and TaskDelayUntil() are designed to give one tick period granurality. And with correctly set up task priorities (higher than non-periodic tasks) give satisfying results.

Of course if tick period granurality is not acceptable, you have to use additional timers generating interrupts to trigger task execution start on precise moments. This comes at a price.

Still I don't see how changing kernel can provide you better periodic task operation. And still you have to deal with situation when there are more than one task to execute at a particular time.

[ 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