本系列文章旨在提供一个ETAS RTA-CAR工具链的操作指南,使读者对工具链中各部分软件的功能快速建立初步的理解。同时,通过实际的操作演示,读者可以学习建立AUTOSAR工程的基本工作流程,并在过程中加强对AUTOSAR概念的理解。
在本视频中,您将学习:
ConfGen时所需的配置文件algo.properties的作用和语法规则
Can通信协议栈数据流及配置
algo.properties的作用和语法规则:
在执行ConfGen时,我们可以在Settings/algo.properties这个文件中添加一些规则来更改ConfGen生成的BSW模块中的一些默认值,该文件中的规则采用逗号分隔的默认列表形式:
manprop_{module}_{specifier} = {parameter}:{default_value}, ...
{module}
需要更改默认参数的模块名称
{specifier}
ALL,可应用于模块的所有实例。
要更改参数的实例的SHORT-NAME。
{parameter}
需要设置的参数名称。(如果模块中存在命名冲突,则必须使用参数的完整路径)
{default_value}
用到的新默认值
Can Mailbox Mapping
一些硬件要求Can邮箱按特定顺序排列,此时可以通过在algo.properties中设置邮箱映射规则。该语法规则为:
MbSortingPref=direction,~canControllerName,canHandleType
其中direction为邮箱排序的方式,默认情况下邮箱会按照先收再发的顺序排列,若在其前面加上~,则邮箱会按照先发再收的顺序排列。关于algo.properties的详细描述可以参考RTA-BSW UserGuide.pdf中的3.5.2节。
对Can通信协议栈中的发送数据流进行探究
将经过SystemdataMapping的系统信号(System Signal)与对应的ISignal进行关联,这里的System Signal和ISignal以及AUTOSAR Signal是一一对应的,关于如何进行SystemdataMapping,可以观看本系列的第5期视频。
RTE通过Com_SendSignal ( )接口将该ISignal发送到Com模块
Com模块通过其中的Comsignal引用对应的ISignalToIPduMapping,将其封装为
I-PDU,通过接口PduR_ComTransmit( )发送到PduR模块
PduR根据路由表中所指定的I-PDU目标接收模块,如在此图中PDUR将接收到的I-PDU经过一定处理后通过接口CanIf_Transmit( )发送到CanIf模块
CanIf将信号以L-PDU的形式通过CanIf_Write( )发送到Can驱动模块。
最终,实现了基于Can总线的基本数据发送。
审核编辑:汤梓红
全部0条评论
快来发表一下你的评论吧 !