【Autosar Can Sample】第二章之配置Ecuc模块

系列文章目录

【Autosar Can Sample】第一章之配置CanIf模块

【Autosar Can Sample】第二章之配置Ecuc模块

【Autosar Can Sample】第三章之配置Pdur模块

【Autosar Can Sample】第四章之配置Com模块

【Autosar Can Sample】第五章之配置CanSM、ComM 模块


前言

`
根据第一章,我们已经配置好了CanIf模块,现在我们继续下一步Ecuc的配置。Ecuc的配置主要涵盖以下三点配置内容:
全局PDU配置:ECUC模块负责定义全局PDU(协议数据单元),并指定这些PDU的传输路径和目标模块(如CanIf)。CanIf模块通过配置文件(如CanIfRxPduCfg和CanIfTxPduCfg)获取这些PDU的详细信息,包括CAN ID、数据长度、接收/发送模块等。

CAN控制器配置:ECUC模块配置CAN控制器的参数,如波特率、接收过滤器等,并将这些配置传递给CanIf模块。CanIf模块根据这些配置初始化CAN硬件。

硬件对象句柄(HOH):ECUC模块定义硬件对象句柄(包括硬件接收句柄HRH和硬件发送句柄HTH),CanIf模块通过这些句柄与CAN驱动(CanDrv)交互。


`

一、配置Ecuc

1.新建ecucconfigset (其实不止是ecuc ,大部分模块的config都需要我们去进行配置)
在这里插入图片描述
2.新建ecucpducollection (pdu 集合,可以理解为所有pdu都需要在这边统一管理)
在这里插入图片描述
这里定义的pdus中应包含所有can控制器发出的/接受的所有数据。我们这里只暂时定义一组。

二、数据流图

为了更好的理解这个模块在数据流向中充当的作用,我们简单的画一个数据流图来显示。
在这里插入图片描述
CAN驱动接收数据:CAN驱动从硬件接收CAN帧,并将其封装为L-PDU(逻辑协议数据单元)。
通知CanIf模块:CAN驱动调用CanIf_RxIndication()函数,将接收到的L-PDU传递给CanIf模块。

CanIf模块处理:
软件过滤:CanIf模块根据ECUC模块配置的接收过滤器(如硬件对象句柄HRH)对L-PDU进行软件过滤。
数据长度检查:CanIf模块检查L-PDU的数据长度是否符合ECUC模块中定义的PDU长度。
转换为I-PDU:将L-PDU转换为I-PDU(内部协议数据单元),并附加元数据(如CAN ID、地址扩展等)。

PduR模块相关:
传递给PduR模块:CanIf模块将I-PDU传递给PDU路由器(PduR),PduR根据ECUC模块配置的路由表将I-PDU路由到相应的上层模块(如COM模块)。

三、处理第一章关联问题

canifrxpduref: 关联pdu
在这里插入图片描述

四、验证配置

1.目前状态

对canif模块进行验证validate(与ecuc相关的错误已经被消除)
在这里插入图片描述


总结

`

以上就是今天要讲的内容,本文简单介绍了Ecuc模块的配置使用,主要的配置工作在于Pdus集合的配置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值