文章目录
在上一篇,我们介绍了CanIf模块,接下来我们介绍AUTOSAR通信结构中的核心模块——PduR(AUTOSAR PDU Router)。下图显示了 PduR在 AUTOSAR CAN通信结构中的位置。
PduR简介
PduR提供路I-PDU(Interaction Layer Protocol Data Units)的路由服务。PduR基于静态定义的I-PDU标识符来执行I-PDU的路由,在运行期间没有I-PDU被动态路由,即PduR的路由表是静态配置,配置完成后在运行时不支持更改。PduR模块主要有两部分组成:
- PduR路由路径:静态路由路径,描述的是每个被路由I-PDU的路由属性。
- PduR引擎:根据PduR路由路径执行路由功能的代码,PduR引擎要处理
- 将I-PDU从Source路由到Destination;
- 将Source的I-PDU的ID转换为Destination的I-PDU的ID(如:PduR_ComTransmit()到CanIf_Transmit(),PduR_CanIfTxConfirmation()到Com_TxConfirmation());
PduR的路由功能有三种方式:
- I-PDU转发
- 发送
- 到通信接口
- 本地模块到通信接口的I-PDU单播(1:1)。
- 本地模块到通信接口的I-PDU多播(1:n)。
- 到通信接口
- 发送