【AUTOSAR-COM】-2.3_通过PduGroup批量控制CAN Frame/Pdu的接收

本文介绍了如何使用AUTOSAR的PDU Group进行批量控制CAN Frame/Pdu的接收,包括PDU Group的启动、停止和配置方法。通过配置PDU Group,可以实现对CAN信号的自定义过滤,并提供了测试Log来验证控制效果。

点击返回「《Autosar_BSW高阶配置》总目录」

案例背景(共4页精讲:该篇博文将告诉您:
-->如何实现类似UDS诊断 $28服务,控制所有APP CAN Rx Frame/Pdu/报文接收;

-->自定义过滤CAN信号的接收,并附上测试Log,帮助您理解;。

目录

1 PDU Group的理论基础

1.1 PDU Group的启动

1.2 PDU Group的停止

1.3 API介绍

2 如何配置PDU Group批量控制Rx Ipdu的接收

2.1 配置PDU Group

2.2 配置Ipdu

2.3 配置依赖项

3 测试Log:PDU Group批量控制Rx Ipdu接收

4 结尾


<--返回「Autosar_BSW高阶配置」总目录-->

<--返回「Autosar_BSW高阶配置」专栏主页-->

<--返回「个人博客」首页-->

1 PDU Group的理论基础

1.1 PDU Group的启动

详见博文“

### 关于AUTOSAR ECUC-CONTAINER-VALUE IBCU_17A_CAN0CH_CanIf2PduR PduRRoutingPath 的定义与用法 #### 1. **ECUC-CONTAINER-VALUE 的基本概念** 在 AUTOSAR 中,`ECUC-CONTAINER-VALUE` 是一种用于描述模块配置参数的数据结构。它通常表示某个模块的一个具体实例及其对应的配置项集合。对于 `IBCU_17A_CAN0CH_CanIf2PduR` 而言,这是一个特定的容器名称,代表了 CAN 接口 (CanIf) 到 PDU 路由器 (PduR) 的映射关系。 这种映射关系的核心在于如何将来自 CanIf 层的消息传递到更高层的服务模块(如 Com 或 Dcm)。这一过程通过 `PduRRoutingPath` 来实现[^1]。 --- #### 2. **PduRRoutingPath 的作用** `PduRRoutingPath` 是 PDU 路由路径的具体定义,其主要功能是描述消息从源模块传输至目标模块的过程。以下是它的几个关键属性: - **Source Module**: 表示数据流的起始模块,在此场景下通常是 CanIf。 - **Target Module**: 数据的目标接收方,可能是 Com、Dcm 或其他高层服务模块。 - **Mapping Rules**: 描述了如何将 CanIf 提供的信号转换为目标模块所需的格式。这涉及到了 I-PDU ID 的映射以及可能存在的确认机制[^2]。 例如,当一个 CAN 报文被接收到时,CanIf 将该报文封装成一个 I-PDU 并将其交给 PduR 处理。随后,PduR 使用预设好的路由规则来决定这个 I-PDU 应该转发给哪个具体的模块。 --- #### 3. **IBC_U_17A_CAN0CH_CanIf2PduR 的含义** 这个名字可以分解如下: - **IBC_U_17A**: 可能是一个硬件平台或者控制器版本号的独特标识符。 - **CAN0CH**: 指代第一个 CAN 通道(Channel),表明这是针对某条物理总线上的通信设置。 - **CanIf2PduR**: 明确指出了是从 CanIf 至 PduR 的连接关系。 因此,整个字符串实际上是在指定一条专用链路——即第零号 CAN 总线上所使用的 CanIf 组件与其关联的 PduR 子系统的交互方式。 --- #### 4. **XML 结构中的体现形式** 在一个标准 ARXML 文件中,此类配置可能会呈现为以下片段: ```xml <ECUC-MODULE-CONFIGURATION-VALUES> <SHORT-NAME>IBCU_17A_CAN0CH_CanIf2PduR</SHORT-NAME> <DEFINITION-REF>/AUTOSAR/EcuDefs/PduR</DEFINITION-REF> <SUB-CONTAINERS> <ECUC-CONTAINER-VALUE> <SHORT-NAME>PduRRoutingPath</SHORT-NAME> <PARAMETER-VALUES> <INTEGER-PARAM-VALUE> <DEFINITION-REF>/AUTOSAR/ParameterDefs/PduRIPduId</DEFINITION-REF> <ACTUAL-VALUE>0x1F</ACTUAL-VALUE> </INTEGER-PARAM-VALUE> </PARAMETER-VALUES> <!-- 更多子节点 --> </ECUC-CONTAINER-VALUE> </SUB-CONTAINERS> </ECUC-MODULE-CONFIGURATION-VALUES> ``` 上述 XML 片段展示了以下几个要点: - `<SHORT-NAME>` 字段明确了当前配置对象的名字; - `<DEFINITION-REF>` 引用了相应的元模型定义地址; - `<SUB-CONTAINERS>` 下嵌套有实际的路由路径详情,比如每一路径对应唯一的 IPduID 值等信息[^4]。 --- #### 5. **应用场合分析** 这类配置常见于需要动态调整网络流量的应用环境之中。例如某些车辆诊断工具会依据实时状态改变发送频率或暂停部分非必要帧的广播操作。借助 BswM 功能调度逻辑即可达成灵活控制目的[^4]。 同时为了保障代码质量并满足行业规范要求,开发人员还需遵循诸如 MISRA C 等编码准则以规避潜在风险因素[^3]。 --- ###
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

汽车电子助手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值