目录
前言
前面已经讲解了MCAL的作用。按照博主的理解,配置autosar工程肯定是从驱动层开始。 这里博主就以实际例子的方式,简单给大家做一个EB tresos移植到davinci的demo工程。
肯定有很多人讨论到为什么需要这么麻烦的从EB Tresos将MCAL移植到davinci上,对此博主只能给出自己的理解:
1.优点
1.1.参考性: 芯片厂商会在官网提供MCAL的DEMO工程。
1.2. 便捷:基于芯片厂商配置的MCAL工程,在针对各种SIP集成时候,能够极大的减轻工作量。
1.3 便宜:很多时候我们购买SIP并不会考虑购买MCAL层的模块,这是因为芯片厂商会免费提供MCAL以及配置MCAL的工具。这样我们购买的SIP会极大的兼容各大芯片。
2.缺点
2.1 维护麻烦:需要使用者同时精通多个工具的配置和验证。
在文章的结尾,博主会给出自己配置出来的demo工程。请注意,该工程不应用于任何实际项目,只是单纯带大家熟悉整个流程。所有引用该工程引发的后果,请自行承担。
1. 环境准备
若要完成AutoSar Demo工程的开发必须具备以下资源:
- DaVinci Configurator工具 + SIP集成软件包
- EB Tresos 23
3. MCAL S32K14X_MCAL4_2_RTM_HF3_1_0_1
以上三个工具的来源,博主这里简单重复下。:
第一个工具来自于vector汽车技术有限公司,是专业的配置autosar BSW层的工具,费用昂贵。如果是学习的目的,大家可以去二手网站上购买,注意请搜索SIP + keyman加密狗。 SIP包含了配置工具DaVinci Configurator和SIP内包含的vector提供的标准模块。注意:大多数的二手SIP包都是为某一个芯片定制购买的,里面包含的模块肯定是偏少的。如果需要购买,博主可以推荐一个靠谱店铺花100多,购买一款和博主一样的工具链。
第二个工具和第三个工具来自于博主使用的芯片NXP S32K144官网,申请方式在上一个章节已经阐述了。
2. 在EB tresos上配置MCAL
按照vector官方给的指导书“TechnicalReference_3rdParty-MCAL-Integration”文档里描述,最好将EB工具和MCAL安装到SIP的3rdpartytool路径下。博主也尝试过不将EB安装到SIP的3rdparty
tool路径下,结果是davinci生成时候调用EB失败。
步骤1:下载软件
按照上一章节下载EB Tresos和MCAL MCAL S32K14X_MCAL4_2_RTM_HF3_1_0_1 ,MCAL记得保留dat秘钥。
步骤2:安装EB Tresos 23
运行EB tresos安装文件“setup.exe”。
选择SIP路径下的ThirdParty/MCAL_S32K/Supply,如博主给的图片所示:
Install等待安装成功,选择exit.
步骤3:安装MCAL
选择MCAL MCAL S32K14X_MCAL4_2_RTM_HF3_1_0_1.exe 和其他软件一般需要勾选同意条款。只有这里需要导入NXP官网提供的秘钥文件***.dat。
补充:获取MCAL秘钥的方法:到达下载界面,点击license keys,勾选generate,Save all,就能获得博主下面使用到的dat文件。
选择对应秘钥
选择安装路径(博主因为已经安装过MCAL MCAL S32K14X_MCAL4_2_RTM_HF3_1_0_1版本,所以使用了105版本给大家演示。)
选择上一个安装到SIP里面的EB Tresos的路径,然后点击Install.
3. 新建EB工程
新建一个EB工程,注意autosar 版本一定要和EB tresos支持的版本相同,像博主使用的23版EB Tresos支持的是4.2.2,然后点击next.
勾选Automatically,点击Finsh。其他名字任意命名,最好是全英文。
打开工程,并选中Module Configurations,导入自己需要的MCAL模块,博主选用了以下几个模块。
选中左边的模块名字,再选中编号为2的按键,将模块添加到EB Tresos工程里。
4. 导出Arxml文件
在3st步没有问题,先使用右键->Load Configuration加载配置。然后使用标号为2的小锤子,生成代码。如果代码生成成功可以开始下一步,否则请解决EB的报错。
选择标号3的选项,导出Arxml。
按照博主标号1,2,3,4去执行。
根据博主1,2,3,4,5即可导出命名为S32K1_OUT.arxml文件,包含了所有上门选择的MCAL模块。在执行第一步之前,记得在EB的工程下创建一个空文件S32K1_OUT.arxml,因为Browse按钮只能选中存在的文件。