2. 开发环境搭建:Vector DaVinci Developer安装与配置、创建第一个SWC工程

说实话,很多新手一上来就急着写代码,结果环境没搭好,折腾半天连个SWC都建不出来。我当年刚接触AUTOSAR时也犯过这毛病——装了个DaVinci Developer,结果License没配好,一打开就报错,愣是卡了两天。所以这一章,咱们踏踏实实把环境搞定,再亲手创建第一个SWC工程。

2.1 安装前的准备工作

先别急着双击安装包。你得确认几件事:

  • 操作系统:DaVinci Developer只支持Windows 10 64位或Windows 11。我试过在Win7上装,各种兼容性问题,劝你别折腾。
  • Java环境:需要JDK 11或更高版本。你可以在命令行里敲 java -version 检查一下。如果没有,去Oracle官网下个JDK 11。
  • License文件:Vector的产品都是绑定License的。你得先拿到一个 .lic 文件,或者配置好License Server。我在项目里见过有人把License文件放桌面上,结果一更新系统就丢了……嗯,建议你专门建个文件夹存好。
  • 硬件要求:至少8GB内存,推荐16GB。SSD硬盘是必须的,不然加载项目时你会怀疑人生。
注意: 安装前请关闭杀毒软件。Vector的安装程序有时会被误报为威胁,我遇到过好几次了。另外,安装路径不要带中文或空格,否则后面编译会出一些莫名其妙的错误。

2.2 安装Vector DaVinci Developer

好,准备工作做完了,咱们开始装。流程其实不复杂:

  1. 双击 DaVinci_Developer_Setup.exe,选择语言(建议英文,中文翻译有些地方不准确)。
  2. 一路Next,到选择组件时,我建议你勾选 DaVinci Developer Core 和 DaVinci Developer Extensions。Extensions里有一些实用工具,比如代码生成器辅助插件。
  3. 安装路径我习惯用默认的 C:\Vector\DaVinci Developer\,但如果你C盘空间紧张,可以改到D盘。
  4. 安装完成后,会弹出一个License配置向导。选择 License File,然后浏览到你存放 .lic 文件的位置。
  5. 点Finish,重启电脑。

重启后,你可以在开始菜单里找到 DaVinci Developer 的图标。双击打开,如果能看到主界面,恭喜你,安装成功了。

小技巧: 如果你用的是公司网络,License Server可能已经配好了。这时候你只需要在向导里选 License Server,然后输入服务器地址和端口号就行。我曾经在客户现场折腾了半天,最后发现人家用的是Server模式,我傻乎乎地一直在找License文件……

2.3 配置开发环境

安装完只是第一步。真正干活前,还得配几个关键设置。我个人习惯先做这三件事:

  • 设置工作空间:打开DaVinci Developer,点击 File -> Switch Workspace,选一个你常用的文件夹。我一般会在D盘建一个 Workspace_AUTOSAR,把所有项目都放里面。
  • 配置代码生成器路径:点击 Window -> Preferences -> DaVinci Developer -> Code Generation,设置 Generator Path 指向你的代码生成器(比如DaVinci Configurator Pro的安装目录)。这一步很多人会忘,结果生成代码时一直报错。
  • 导入基础模块包:AUTOSAR不是从零开始的。你需要导入一些基础模块,比如 EcuM、BswM、Com 等。这些模块通常由OEM或供应商提供,是一个 .arxml 文件。点击 File -> Import -> General -> Existing Projects into Workspace,然后选择这些文件。
核心要点: 环境配置的核心就是让DaVinci Developer能找到你的License、代码生成器和基础模块。这三样缺一不可,否则你连一个空的SWC都建不出来。

2.4 创建第一个SWC工程

环境配好了,咱们来动手。创建一个SWC工程,说白了就是定义一个软件组件,告诉工具这个组件有哪些端口、哪些数据、跑在哪个Runnable上。我带你走一遍流程:

  1. 打开DaVinci Developer,点击 File -> New -> DaVinci Project。
  2. 输入项目名称,比如 MyFirstSWC。选择保存路径,然后点Finish。
  3. 在左侧的 Project Explorer 里,右键点击 Components 文件夹,选择 New -> SwComponentType。
  4. 弹出一个对话框,让你选组件类型。对于应用层软件,一般选 ApplicationSwComponentType。名字我建议用 App_SpeedController 这种有意义的命名。
  5. 点Finish后,你会看到一个空白的组件编辑器。现在咱们给它加点东西。

接下来,咱们给这个SWC添加一个端口(Port)。端口是SWC跟外界通信的接口:

  • 在组件编辑器的 Ports 区域,右键选择 New -> ProvidedPort(提供端口,比如输出数据)。
  • 输入端口名,比如 SpeedOut。接口类型选 SenderReceiverInterface,然后点OK。
  • 再添加一个 RequiredPort(需求端口,比如读取传感器数据),名字叫 SensorIn。

端口有了,还得有数据。咱们定义一个数据元素:

  • 在 Data Elements 区域,右键选择 New -> DataElement。
  • 名字叫 VehicleSpeed,类型选 uint16。这个就是咱们要输出的车速信号。
  • 把 VehicleSpeed 拖拽到 SpeedOut 端口上,这样端口就知道它要发送什么数据了。

最后,咱们得告诉SWC什么时候干活。这就要定义Runnable(可运行实体):

  • 在 Runnables 区域,右键选择 New -> RunnableEntity。
  • 名字叫 Runnable_CalcSpeed。触发事件选 TimingEvent,周期设为 0.01 秒(也就是10ms)。
  • 在Runnable的 Data Access 里,把 SensorIn 和 SpeedOut 加进去,这样Runnable就能读写这些数据了。

好了,保存一下(Ctrl+S)。你的第一个SWC就建好了!

避坑指南: 我曾经在定义Runnable时忘了设置触发事件,结果生成的代码里这个Runnable根本没被调用。调试了半天才发现……所以记得检查Runnable的 Trigger 属性,确保它绑定了事件。

2.5 知识体系总览

这一章的内容其实就围绕一个核心:从工具安装到第一个SWC成型。下面这张图帮你理清逻辑:

开发环境搭建与第一个SWC工程 1. 安装DaVinci Developer 2. 配置License与工作空间 3. 创建SWC工程 SWC工程创建步骤 新建DaVinci项目 添加SWC组件类型 定义端口与数据 配置Runnable 核心:License + 工作空间 + 基础模块 → 组件定义 → 端口/数据 → Runnable 第2章 · 开发环境搭建与第一个SWC工程

2.6 验证你的工程

工程建好了,怎么知道对不对?我教你一个快速验证的方法:

  • 在Project Explorer里右键点击你的项目,选择 Validate。工具会检查所有配置是否合法。
  • 如果看到绿色的 Validation Succeeded,说明基本没问题。
  • 如果有红色错误,双击错误信息,工具会自动跳转到问题位置。最常见的错误是端口类型没选对,或者Runnable没绑定事件。

验证通过后,你可以尝试生成代码。点击 Project -> Generate Code,工具会在你的项目目录下生成一堆 .c 和 .h 文件。打开看看,你会发现里面已经有你定义的端口、数据和Runnable框架了。

总结一下: 这一章咱们干了三件事——装好工具、配好环境、建了第一个SWC。你想想看,从零到有一个能生成代码的SWC工程,其实也就几步。关键是每一步都要稳,别跳步骤。我见过太多人因为License没配好就急着建工程,最后白忙活一场。

好了,你的开发环境已经就绪。接下来就可以在这个工程上继续添加逻辑、配置通信、甚至集成到整个ECU项目里了。记住,SWC是AUTOSAR应用层的核心,把这个基础打牢,后面会越来越顺。


可可精品资料库