Quality RTOS & Embedded Software

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


The difference configTICK_RATE_HE between 1000 and 100

Posted by hmtsai on September 20, 2015


I wonder about the difference with 1000 and 100. If the value is 1000, it means FreeRTOS the kernel tick is 1000Hz. The time's resolution is 1ms. If the value is 100, it tick is 100HZ, The resolution is 10 ms. I set the value is 100, then use vTaskDelay(6/portTICKPERIODMS). It equals no delay. Because the resolution is 10ms. Is it correct? I want to know how to delay 1ms when I set the value is 100. Is it possbile?


The difference configTICK_RATE_HE between 1000 and 100

Posted by richard_damon on September 20, 2015

If TICKRATEHZ is 100, and thus TICKPERIODMS is 10, you can not request a delay of 1 ms, as the unit of measure on time is 10ms.

In fact, with a TICHRATEHZ of 1000, and TICKPERIODMS of 1, you can't get an exactly 1ms delay either, as a call to vTaskDelay(1) will block your task till the next tick occurs, which will be AT MOST 1ms, and likely somewhat less. If you need a delay of at least 1ms, you need to call vTaskDelay(2), which will delay at least 1ms, and up to 2ms (or longer if a higher priority task is ready at that point).

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

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

Latest News

Meet us at Embedded World. Hall 3A-525.

Hear from Richard Barry at Embedded World. Feb 28, 16:00, Hall 4-428.

Video: Watch James Gosling & Richard Barry at re:Invent, Las Vegas 2017.

FreeRTOS kernel V10.0.1 is available for immediate download. Now MIT licensed.

FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

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