本文介绍如何使用 S32DS 进行 AUTOSAR MCAL 工程的编译和调试,重点在于将 EB 配置生成的 MCAL 代码集成到 S32DS 中。
虽然配置过程较为繁琐,实操过一遍就会熟悉整个工程的框架。以后每次在 EB 中更新配置,生成代码的文件夹已经集成在 S32DS 工程中,无需手动拷贝。而且再次新建工程可以此为模版,修改个别路径和链接位置即可,十分方便。希望能够帮助到有此需求的朋友们,也是在这里作下笔记避免自己遗忘。
一、 软件安装列表
全篇以 NXP S32K344 为例建立工程,使用到的软件及对应版本如下:
- EB Tresos Studio 29.0.0
- MCAL 配置工具
- SW32K3_S32M27x_RTD_R21-11_4.0.0_P19_D2403.exe
- S32K3 MCAL RTD 安装包,使用 EB Tresos Studio 进行配置
- S32 Design Studio 3.5
- NXP S32 系列的集成开发环境(IDE),可用于工程创建、配置、编译、调试等
- 5.9_D2312.zip
- S32DS 升级包第 9 版本
- 5.8_D2311.zip
- 适用于S32K3xx 的 RTD 基础开发包
安装教程请移步其他博文,本文直接跳过,开始建立工程。
二、 新建项目
- 打开 S32DS V3.5 版本,菜单栏选择“File -> New -> S32DS Application Project”
- 输入项目名称
- 选择芯片型号,使用 S32K344
- 选择编译器版本,建议选择 GCC v10.2
- 设置 FPU,选择“Hardware:-mfloat-abi=hard”
我们需要在工程中使用 MCAL 而不是 SDK,所以 SDKs 栏保持为空,选择完成后点击“finish”。对应的步骤如下图所示:
三、 删除和添加文件
建立工程后,生成了一些启动代码、链接文件、头文件和 main.c 文件等。
- 删除位于“Project_Settings”中的“Startup_Code”和“Linker_Files”文件夹。我们使用 MCAL 自己的链接文件和启动文件,它们分别位于“{MCAL_PLUGIN_PATH}\platform_TS_T4xxx\build_files\gcc” 和“{MCAL_PLUGIN_PATH}\Platform_TS_T4xxx\src\m7”路径中。
- 删除“include”文件夹,我们使用 MCAL 的头文件,在“{MCAL_PLUGIN_PATH}\BaseNXP_Ts_T4xxx\header”路径中。
- 新建 Generate、Mcal_Plugins、 Tresos_Project 三个空文件夹,分别用来存放 EB Tresos 配置生成的代码源文件、S32K3 MCAL 源文件和 EB tresos 工程。
四、配置 MCAL 文件链接和资源过滤器
- 在 “Mcal_Plugins”中新建文件夹“Link_Source”,名称可自定义。
- 点击“Advanced”将 “Link_Source”文件夹链接到 S32K3_RTD_MCAL 包,版本自选,示例为 0.0 P