Являясь частью программного обеспечения, разработанного для FreeRTOS, я реализую специальный протокол прикладного уровня через последовательный порт, где у меня есть требование ожидания / опроса в течение определенных миллисекунд.Например, я отправляю сообщение устройству с запросом подтверждения, и система должна строго ждать 200 мс, пока подтверждение не будет получено от получателя, иначе передаст сообщение снова.Есть ли способ точно (скажем, в пределах ± 5% допуска) достичь времени ожидания во FreeRTOS, при условии, что у меня есть другие задачи, выполняющиеся с тем же приоритетом.Не уверен, что vTaskDelay()
будет постоянно воспроизводить результаты из-за таких факторов, как загрузка процессора, выполнение других задач и т. Д. Есть ли лучший способ разработать такую реализацию?