We recently used RTA-OS to configure the OS. After integration, it was found that the task would break the counter's software interrupt when running.
/**************************/
/* PIT_1 channel 1 1ms return function */
/**************************/
void Gpt_Pit1Notificaiton(void)
{
gpt_timer_count++;
IncrementCounter(MillisecondCounter);
}
We configured a 10ms periodic task. The PIT1 interrupt is interrupted when the task executes time operation 1ms. For example, if the task execution time is 3ms, the PIT1 interrupt will be interrupted twice, causing the task cycle to be stretched to 12ms; if the task execution time is 5ms, the PIT1 interrupt will be interrupted fource, causing the task cycle to be stretched to 14ms. But, if the task execution time is less than 1ms, the task cycle is normal.
We are using the 2.0.0 SDK package.
Have you encountered any related problems and how to solve them?