FreeRTOS configTICK_RATE_HZ

Я использую MSP430f5438 с версией 5.4 FreeRTOS.

У меня странная проблема, которую я не могу понять.

По сути, когда я устанавливаю configTICK_RATE_HZ на разные значения, светодиод мигает быстрее или медленнее; это должно остаться той же самой скоростью. Он мигает медленнее, чем выше я устанавливаю configTICK_RATE_HZ, и тем быстрее, когда я устанавливаю TICK_RATE ниже.

vTaskDelayUntil (& xLastFlashTime, xFlashRate); таков, что светодиод должен мигать только раз в секунду, независимо от того, что такое configTICK_RATE_HZ. Я прошел и проверил xFlashRate, чтобы убедиться. Его всегда = в configTICK_RATE_HZ. Код:

xFlashRate = ledFLASH_RATE_BASE;//my flash base rate is 1000ms
xFlashRate /= portTICK_RATE_MS; //so xFlashrate = whatever configTICK_RATE_HZ equals

/* We need to initialise xLastFlashTime prior to the first call to vTaskDelayUntil().*/ 
xLastFlashTime = xTaskGetTickCount();
for(;;) { 
vTaskDelayUntil( &xLastFlashTime, xFlashRate ); vParTestToggleLED( uxLED ); 
flashled();//this should happen every 1 second.
}

Светодиод мигает с периодом, превышающим 1 секунду, когда я устанавливаю configtick_rate_hz равным 1000, и светодиод мигает с периодом, намного меньшим, чем 1сек, когда я устанавливаю частоту тиков на значение, меньшее ~ 200

configTICK_RATE_HZ не должен влиять на время мигания светодиода.

Я понимаю, что нужно больше информации, и с готовностью предоставлю любые фрагменты кода, необходимые для помощи.

Ответы на вопрос(1)

Ваш ответ на вопрос