+/*\r
+ * It is intended that the tasks and timers in this file cause interrupts to\r
+ * nest at least one level deeper than they would otherwise.\r
+ *\r
+ * A timer is configured to create an interrupt at moderately high frequency,\r
+ * as defined by the tmrtestHIGH_FREQUENCY_TIMER_TEST_HZ constant. The\r
+ * interrupt priority is by configHIGH_FREQUENCY_TIMER_PRIORITY, which is set\r
+ * to ( configMAX_SYSCALL_INTERRUPT_PRIORITY - 1UL ), the second highest\r
+ * priority from which interrupt safe FreeRTOS API calls can be made.\r
+ *\r
+ * The timer interrupt handler counts the number of times it is called. When\r
+ * it has determined that the number of calls means that 10ms has passed, it\r
+ * 'gives' a semaphore, and resets it call count.\r
+ *\r
+ * A high priority task is used to receive the data posted to the queue by the\r
+ * interrupt service routine. The task should, then, leave the blocked state\r
+ * and 'take' the available semaphore every 10ms. The frequency at which it\r
+ * actually leaves the blocked state is verified by the demo's check task (see\r
+ * the the documentation for the entire demo on the FreeRTOS.org web site),\r
+ * which then flags an error if the frequency lower than expected.\r
+ */\r
+\r