等待点和事件
WaitPoint and Event
我一直在阅读有关开发 Autosar 软件组件的内容。我仍然对 WaitPoint
和 Event
的内部行为感到困惑。 AUTOSAR 软件组件中 WaitPoint
和 Event
之间的主要区别是什么?如果你能根据他们给我看一个c代码示例就太好了。
AUTOSAR 中的Event
对于软件组件有两种不同的含义。它要么触发 RunnableEntity
,要么解析 WaitPoint
。如果 RunnableEntity
被触发,例如通过 DataReceivedEvent
Rte 将激活您的 RunnableEntity
然后您可以调用 Rte_Read() 来读取数据。第二种情况是当您为 RunnableEntity
定义一个 WaitPoint
并让 DataReceivedEvent
解析它时。如果您随后调用 Rte_Receive() 函数将阻塞,直到收到新数据。
通常,这样的功能是由OSEK WaitEvent()
实现的,如果Rte 接收到数据,它将使用OSEK SetEvent
函数来唤醒调用WaitEvent()
的任务。
我一直在阅读有关开发 Autosar 软件组件的内容。我仍然对 WaitPoint
和 Event
的内部行为感到困惑。 AUTOSAR 软件组件中 WaitPoint
和 Event
之间的主要区别是什么?如果你能根据他们给我看一个c代码示例就太好了。
AUTOSAR 中的Event
对于软件组件有两种不同的含义。它要么触发 RunnableEntity
,要么解析 WaitPoint
。如果 RunnableEntity
被触发,例如通过 DataReceivedEvent
Rte 将激活您的 RunnableEntity
然后您可以调用 Rte_Read() 来读取数据。第二种情况是当您为 RunnableEntity
定义一个 WaitPoint
并让 DataReceivedEvent
解析它时。如果您随后调用 Rte_Receive() 函数将阻塞,直到收到新数据。
通常,这样的功能是由OSEK WaitEvent()
实现的,如果Rte 接收到数据,它将使用OSEK SetEvent
函数来唤醒调用WaitEvent()
的任务。