3、开发环境搭建:安装Vector DaVinci工具链、配置License、创建第一个AUTOSAR工程
好,咱们正式开始动手了。
这一章,我带你走一遍Vector DaVinci工具链的安装流程。说实话,很多新手在这第一步就卡住了——不是装不上,就是License死活激活不了。我当年刚接触AUTOSAR时,光配License就折腾了一下午,后来才发现是环境变量写错了。
嗯,咱们今天把这些坑都填平。
3.1 工具链概览:你到底需要装哪些东西?
Vector的DaVinci工具链,说白了就是一套AUTOSAR的“全家桶”。但别一股脑全装,咱们按需取用。
对于咱们这个实战课程,核心工具就三个:
| 工具名称 | 作用 | 我个人的建议 |
|---|---|---|
| DaVinci Developer | SWC(软件组件)设计与接口定义 | 必装,这是咱们画架构图的地方 |
| DaVinci Configurator Pro | BSW(基础软件)配置与生成代码 | 必装,ECU配置全靠它 |
| Vector License Manager | 管理所有Vector工具的License | 必装,否则工具打不开 |
其他像CANoe、vFlash这些,咱们后面用到时再装。别贪多,一口吃不成胖子。
3.2 安装Vector DaVinci工具链
安装过程其实挺傻瓜的,但有几个细节我得唠叨一下。
3.2.1 系统要求
先看看你的电脑够不够格。我建议至少16GB内存,256GB固态硬盘。为什么?因为DaVinci Configurator Pro在解析大型ARXML文件时,内存占用轻松上8GB。我有一台8GB的笔记本,跑一次配置生成,风扇直接起飞。
3.2.2 安装步骤
- 获取安装包:从Vector官网或公司内部服务器下载。注意版本号,咱们课程用的是DaVinci Developer 2022 SP2和Configurator Pro 2022 SP2。
- 关闭杀毒软件:嗯,这一步很重要。有些杀毒软件会把Vector的驱动文件误判为病毒。我遇到过好几次,装完后工具打不开,一查是dll被隔离了。
- 以管理员身份运行:右键安装包,选择“以管理员身份运行”。否则后面写注册表时会报错。
- 选择安装路径:我习惯装在C盘默认路径,省心。如果你C盘空间紧张,可以改到D盘,但路径中不要有中文或空格。
- 组件选择:安装向导会让你选组件。咱们先只勾选DaVinci Developer和DaVinci Configurator Pro,其他默认。
- 等待安装完成:大概10-15分钟。去泡杯咖啡吧。
3.3 配置License:最让人头疼的一步
工具装好了,双击图标——弹出一个License错误窗口。别慌,这是必经之路。
Vector的License分两种:浮动License(网络版)和节点锁定License(单机版)。咱们课程用的是浮动License,因为公司里一般都是这么部署的。
3.3.1 配置Vector License Manager
- 打开Vector License Manager(开始菜单里搜一下)。
- 点击“Add License Server”。
- 输入License服务器的IP地址或主机名。比如:
192.168.1.100或lic-server.company.com。 - 端口号默认是
1947,不用改。 - 点击“Test Connection”。如果显示“Success”,恭喜你,网络通。
3.3.2 环境变量设置(避坑重点)
有时候License Manager配好了,但DaVinci工具还是报错。为什么?因为工具找不到License。
你需要检查环境变量:
VECTOR_LICENSE_FILE:值设为1947@你的服务器IP,比如1947@192.168.1.100。LM_LICENSE_FILE:同上,有些老版本工具认这个变量。
设置方法:右键“此电脑” -> 属性 -> 高级系统设置 -> 环境变量 -> 新建。
1947@192.168.1.100 (末尾有个空格)。这种低级错误,排查起来真要命。
3.4 创建第一个AUTOSAR工程
好,工具能打开了,License也亮了。咱们来创建第一个工程。
3.4.1 用DaVinci Developer创建SWC工程
- 打开DaVinci Developer,点击“File” -> “New Project”。
- 选择工程模板:选“Empty Project”。别选那些带示例的,咱们自己从头搭。
- 设置工程名称:比如
MyFirstAutosar。 - 选择保存路径:同样,不要有中文路径。
- 点击“Finish”。
你会看到一个空白的画布。这就是咱们设计SWC的地方。先别急着画,咱们先导入一个系统模板。
3.4.2 导入系统描述(System Description)
一个完整的AUTOSAR工程,需要先有系统级的定义。比如有哪些ECU、哪些信号、哪些总线。
我提前准备了一个简单的系统描述文件 System.arxml,你可以在课程资料里找到。
- 在DaVinci Developer中,右键左侧的“System”节点 -> “Import” -> “ARXML”。
- 选择
System.arxml文件。 - 导入完成后,你会看到ECU实例、信号矩阵等信息。
3.4.3 创建第一个SWC(Application SWC)
- 在“Components”标签页,右键 -> “New” -> “Application SwComponentType”。
- 命名为
Swc_EngineControl。 - 双击打开,添加一个“Runnable Entity”,命名为
Run_ControlLoop。 - 设置触发事件为“Periodic”,周期10ms。
嗯,一个最简单的SWC就建好了。虽然它现在啥也没干,但骨架搭起来了。
3.4.4 用DaVinci Configurator Pro配置BSW
SWC设计好了,但ECU还得有基础软件才能跑起来。比如OS、Can通信栈、EcuM等等。
- 打开DaVinci Configurator Pro,点击“File” -> “New Project”。
- 选择“From System Description”,然后选中刚才导入的
System.arxml。 - 选择目标ECU(比如
Ecu_Main)。 - 点击“Finish”。
你会看到一个复杂的配置树。别怕,咱们一步步来。先配置最基础的:
- EcuM:设置ECU启动和关闭的行为。
- Os:配置任务和调度。把咱们的
Run_ControlLoop映射到一个10ms周期任务上。 - Can:配置CAN控制器和收发器。设置波特率500kbps。
Ctrl+S。Configurator Pro偶尔会崩溃,别问我怎么知道的。
3.4.5 生成代码
配置完成后,点击“Generate Code”按钮。工具会生成一堆C文件和头文件。
生成的代码默认放在工程目录下的 generated 文件夹里。你可以用任何IDE(比如IAR、Keil)打开这些代码,编译烧录到开发板上。
Rte_Swc_EngineControl.h,看看里面有没有 Rte_Call_Run_ControlLoop 这个函数声明。如果有,说明RTE(运行时环境)已经正确生成了。
3.5 常见问题与避坑指南
- 安装时提示“缺少VC++运行库”:去微软官网下载安装“Visual C++ Redistributable for Visual Studio 2015-2022”。Vector的工具依赖这个。
- License Manager显示“No licenses available”:先确认服务器上有没有可用的License。有时候管理员只买了5个并发,被其他人占满了。
- 生成代码时卡在“Generating RTE”:检查ARXML文件是否有语法错误。我遇到过标签没闭合导致生成失败的情况。
好了,环境搭好了,第一个工程也建起来了。虽然现在只是个空壳子,但万丈高楼平地起嘛。下一章,咱们开始往SWC里写真正的逻辑代码。