/* The handler for the high priority timer interrupt.  */
static void prvPortHighFrequencyTimerHandler(int iArg) __attribute__((longcall))
/* The handler for the high priority timer interrupt.  */
static void prvPortHighFrequencyTimerHandler(int iArg) __attribute__((longcall))
{
static volatile unsigned long ulExecutionCounter = 0UL;
unsigned long ulHigherPriorityTaskWoken = pdFALSE;
	( void ) iArg;
	STM_ISRR.reg = 1UL << 2UL;
	STM_CMP1.reg += ulCompareMatchValue;
	ulExecutionCounter++;
	if( ulExecutionCounter >= ulInterruptsPer10ms )
	{
		ulExecutionCounter = xSemaphoreGiveFromISR( xHighFrequencyTimerSemaphore, &ulHigherPriorityTaskWoken );
		configASSERT( ulExecutionCounter == pdTRUE );
		ulExecutionCounter = 0UL;
	}
	portYIELD_FROM_ISR( ulHigherPriorityTaskWoken );
}