第3章 开发环境搭建:S32 Design Studio安装、EB tresos Studio配置、Vector DaVinci Developer环境搭建

好,咱们直接进入正题。这一章我带你把三把刀磨快——S32 Design Studio、EB tresos Studio、Vector DaVinci Developer。这三个工具,说白了就是AUTOSAR开发的铁三角。IDE负责写代码,配置工具负责生成RTE和BSW,而DaVinci Developer负责搞SWC和系统级设计。

我刚开始接触S32K3时,光装环境就折腾了两天。不是版本不匹配,就是license过期。嗯,这里我踩过的坑,你一个都别踩。

3.1 S32 Design Studio安装

S32 Design Studio,简称S32DS。它是NXP基于Eclipse魔改的IDE。说白了,就是给你一个写代码、编译、调试的壳子。

3.1.1 下载与版本选择

我个人习惯去NXP官网直接下最新版。但注意,S32K3系列需要S32DS 3.5以上版本。我建议你下载带S32K3专用安装包的版本,别下那个通用版,否则后面还得手动加插件。

注意: 安装前务必关闭杀毒软件。我遇到过好几次,360直接把编译器dll给隔离了,编译时报错“找不到编译器”,排查了半天才发现是杀毒软件搞的鬼。

3.1.2 安装步骤

  1. 双击安装包,选择安装路径。我建议不要有中文和空格,比如 C:\NXP\S32DS3.5
  2. 选择组件时,勾选S32K3系列的支持包。其他系列如果你用不到,就别勾了,省空间。
  3. 安装过程中会提示安装GCC编译器,默认路径即可。
  4. 安装完成后,首次启动会提示设置工作空间。我习惯把工作空间放在项目目录下,方便管理。
小技巧: 安装完成后,建议去Help → Check for Updates更新一下。NXP经常修复一些bug,尤其是调试器的驱动问题。

3.1.3 验证安装

打开S32DS,新建一个S32K3的示例工程。如果能正常编译并通过,说明环境没问题。我记得第一次编译时,进度条卡在50%不动了,后来发现是内存不够。S32DS挺吃内存的,建议至少8GB,16GB更稳。

3.2 EB tresos Studio配置

EB tresos Studio,这是AUTOSAR配置工具里的老大哥。它负责生成BSW(基础软件层)的代码。说白了,MCAL、OS、CanStack这些东西,都是它帮你配出来的。

3.2.1 安装与License配置

EB的安装包比较大,大概2-3GB。安装过程没什么特别的,一路Next就行。但License配置是个坑。

我曾经因为License文件路径带中文,导致工具死活认不到。后来发现,EB的License Server对路径编码很敏感。我建议你把License文件放在纯英文路径下,比如 C:\EB_License\

关键点: EB tresos Studio需要配合MCAL包使用。MCAL包是NXP提供的,里面包含了S32K3的底层驱动配置模块。安装时,把MCAL包解压到EB的插件目录下,或者通过Help → Install New Software添加。

3.2.2 创建工程与配置

打开EB,新建一个工程。选择S32K3对应的MCAL版本。这里要注意,不同版本的MCAL对EB版本有要求。我建议你对照NXP的Release Notes来选。

配置界面是树形结构,左边是模块列表,右边是参数。我个人习惯先配时钟,再配引脚,最后配外设。这个顺序不容易漏。

避坑指南: 我曾经在配置CAN模块时,忘了配置波特率分频器,结果生成的代码在板子上跑不起来。调试了整整一天才发现。所以,每个模块配置完后,建议点一下Validation检查,EB会提示你哪些参数没配全。

3.2.3 代码生成

配置完成后,点击Generate Code。EB会生成一堆.c和.h文件。这些文件就是你的BSW代码。生成后,建议不要手动修改这些文件,否则下次重新生成时会被覆盖。

如果你需要自定义某些行为,可以在配置里添加Post-Build Variant,或者通过Callback函数来实现。

3.3 Vector DaVinci Developer环境搭建

DaVinci Developer,这是Vector家的SWC设计工具。它负责定义软件组件、接口、Runnable等。说白了,你的应用层逻辑怎么拆、怎么通信,全靠它来设计。

3.3.1 安装与激活

Vector的工具安装比较规范。双击安装包,选择组件时,我建议你勾选Developer和Configurator Pro。前者负责SWC设计,后者负责系统配置。

激活需要License文件。Vector的License通常绑定网卡MAC地址。如果你换了电脑或者网卡,记得重新申请License。我遇到过同事因为换了USB网卡,导致License失效,折腾了半天。

3.3.2 创建SWC工程

打开DaVinci Developer,新建一个工程。选择AUTOSAR版本,S32K3一般用4.4或4.2.2。我个人习惯用4.4,因为新特性支持更好。

创建SWC时,需要定义Port、Interface、Runnable。这里有个小技巧:先画架构图,再填细节。DaVinci Developer支持图形化拖拽,你可以把SWC拖到画布上,然后连线。

经验之谈: 我建议你在设计SWC时,尽量把功能拆细。一个SWC只做一件事。比如,把CAN接收和CAN发送拆成两个SWC。这样后期维护和复用都方便。

3.3.3 与EB tresos Studio的集成

DaVinci Developer生成的ARXML文件,需要导入到EB tresos Studio中。EB会解析这些文件,生成对应的RTE代码。

具体步骤:在EB中,通过File → Import → ARXML导入。导入后,EB会自动生成RTE的配置项。你只需要在EB中配置好BSW,然后一起生成代码即可。

关键点: 确保DaVinci Developer和EB tresos Studio使用相同的AUTOSAR版本。否则,ARXML文件可能解析失败。我见过有人用4.2的ARXML导入到4.4的EB中,结果一堆报错。

3.4 环境联调与验证

三个工具都装好后,需要联调一下。我建议你做一个最简单的工程:一个SWC,一个Runnable,一个CAN发送。从DaVinci Developer设计,到EB配置MCAL,再到S32DS编译下载。

如果整个流程走通,说明环境搭建成功。如果卡在某个环节,别慌。先看日志,再看配置。我遇到过最奇葩的问题是,S32DS编译时找不到EB生成的代码路径。后来发现是工程属性里的Include路径没加对。

最后提醒: 这三个工具的版本一定要匹配。我整理了一个版本对照表,供你参考:
工具 推荐版本 备注
S32 Design Studio 3.5 或更高 必须包含S32K3支持包
EB tresos Studio 27.0 或更高 配合MCAL 1.0.0以上
DaVinci Developer 4.4 SP1 支持AUTOSAR 4.4

好了,环境搭建就讲到这里。下一章,我们开始真正动手,创建第一个AUTOSAR工程。到时候,我会带你一步步走通整个流程。