Событие Autosar Rte_Receive с состоянием ожидания и активацией задачи
Я начинаю изучать написание приложения в AUTOSAR, и я столкнулся с этим вопросом, по которому я не могу найти конкретного решения. Если бы вы могли дать ответ на основе вашего опыта / знаний, это было бы очень полезно.
У меня есть периодическая задача 100 мс, и я хочу иметь RTE_Receive с состоянием ожидания в этой задаче. Это означает, что как только происходит соответствующее событие, моя задача переходит в активное состояние готовности.
Означает ли это, что задача запускается в том же цикле (когда происходит событие), или она ожидает следующего цикла 100 мс, чтобы запустить задачу? Я просто хочу определить наихудшую задержку. Если реализация Receive-wait лучше, чем просто RTE_read(который просто обрабатывает данные в следующем доступном цикле)
Извините, если вопрос звучит слишком глупо. Я просто пытаюсь изучить концепции AUTOSAR.
1 ответ
Кажется, есть какое-то недопонимание.
Согласно вашему примеру сценария, задача периодически активируется и запускается еще до Rte_Receive()
API выполняется, блокировка или нет. В конце концов, вызов API Rte_Receive()
выполняется в коде RunnableEntity
выполняется как часть тела задачи.
Опять же, событием, запускающим задачу, является истечение времени соответствующего таймера, а не прием данных.