第二章 开发环境搭建:Vector DaVinci Developer与Configurator Pro的安装与配置、EB tresos Studio的工程创建、相关BSW模块的导入与依赖检查

说实话,很多朋友学诊断栈,上来就啃规范,结果被Dcm和Dem的配置项搞得晕头转向。我个人习惯是,先把刀磨快——也就是把开发环境搭好。环境顺了,后面学起来才不窝火。

这一章,咱们就手把手把Vector和EB两家的工具链搞定。你想想看,诊断栈开发说白了就是跟这三样东西打交道:DaVinci Developer(画SWC的)、Configurator Pro(配BSW的)、EB tresos Studio(另一套BSW配置工具)。很多项目里这两家工具混着用,所以咱们都得会。

2.1 Vector DaVinci Developer的安装与配置

DaVinci Developer这玩意儿,主要是用来做软件组件(SWC)设计的。诊断栈里,Dcm和Dem的交互接口,比如Dcm_GetVin、Dem_GetEventStatus这些,都得在Developer里把Port和Interface定义好。

安装步骤其实不复杂:

  1. 先确认你的License。Vector的License分节点锁和网络锁,我建议用网络锁,方便团队共享。
  2. 运行安装包,选“Developer”组件。注意,千万别手滑把“DaVinci Configurator Pro”也勾上,那是另一个工具,咱们后面单独装。
  3. 安装路径不要有中文,不要有空格。我见过有人装在“Program Files (x86)”里,结果后面生成代码时路径解析报错,折腾了半天。
  4. 装完后,打开License Manager,导入你的license文件。如果提示“No license found”,检查一下环境变量VECTOR_LICENSE_FILE有没有指向正确的路径。
小技巧: 我个人习惯在Developer里先建一个空的“Project”,把诊断相关的SWC类型(比如Dcm_Swc、Dem_Swc)的Interface提前画好。这样后面导入到Configurator Pro时,Port映射就不会乱。

2.2 Vector DaVinci Configurator Pro的安装与配置

Configurator Pro,简称CFG Pro,是咱们配置BSW模块的主战场。Dcm和Dem的模块配置,比如Dcm的PduR路由、Dem的Event存储策略,全在这里搞定。

安装要点:

  • 版本一定要跟Developer匹配。比如Developer 2022 SP1,就配CFG Pro 2022 SP1。版本不对,导入工程时会报“Module version mismatch”。
  • 安装时选“Full Installation”,把BSW模块的模板库都装上。否则后面新建工程时,你会发现Dcm模块是灰色的,选不了。
  • 装完后,打开CFG Pro,先配置一下“Module Configuration”的搜索路径。默认路径在C:\Vector\DaVinci_Configurator_Pro\Modules,但如果你有自定义的BSW模块,记得加进去。
注意: 我曾经在导入一个客户提供的Dcm配置时,发现所有参数都是只读的。查了半天,原来是CFG Pro的“Protection Level”设成了“Locked”。在菜单栏 Options -> Protection 里改成“Unlocked”就好了。这个坑,我印象很深。

2.3 EB tresos Studio的工程创建

EB tresos Studio,很多工程师叫它“EB”。它跟Vector的CFG Pro是竞品,但很多OEM(主机厂)指定用EB。所以咱们也得会。

创建工程的流程:

  1. 打开EB,点击 File -> New -> AUTOSAR Project。
  2. 输入工程名,比如“Demo_DcmDem_Project”。选择AUTOSAR版本,现在主流是4.2.2或4.4.0。我建议用4.4.0,因为Dcm和Dem的配置项更丰富。
  3. 选择BSW模块模板。这里要勾选Dcm、Dem、PduR、CanIf、CanTp这几个。如果漏了,后面依赖检查会报错。
  4. 点击Finish,EB会自动生成一个骨架工程。你会看到左侧的“BSW Module”列表里,Dcm和Dem已经出现了。

嗯,这里要注意:EB的工程结构跟Vector不太一样。EB把每个BSW模块的配置项放在一个独立的.arxml文件里,而Vector倾向于把所有配置放在一个大的.arxml里。所以你在EB里做配置时,记得经常保存,不然EB崩溃了,你半天的工作就白费了。我遇到过两次,现在养成了Ctrl+S的肌肉记忆。

2.4 相关BSW模块的导入与依赖检查

模块导入,说白了就是把Dcm和Dem的“配置模板”加载到你的工程里。这一步做不好,后面配置时你会发现很多参数找不到。

在CFG Pro中导入模块:

  • 右键点击“BSW Modules”,选择“Add Module”。
  • 在弹出的列表里,找到“Dcm”和“Dem”。如果列表是空的,说明你的模块库路径没配好,回去检查2.2节。
  • 导入后,CFG Pro会自动生成一个默认配置。但别急着用,默认配置里很多参数是空的,比如Dcm的DcmDslProtocol(诊断协议类型)默认是“None”,你得改成“UDS”或“OBD”。

在EB tresos Studio中导入模块:

  • EB的导入更直观。在“BSW Module”列表里,直接右键点击空白处,选“Import BSW Module Description”。
  • 选择对应的.arxml文件。这些文件通常放在EB的安装目录下的Modules文件夹里。
  • 导入后,EB会自动进行依赖检查。如果Dcm依赖PduR,而PduR没导入,EB会在“Problems”视图里报红叉。
依赖检查的核心逻辑: Dcm需要PduR来路由诊断请求和响应;Dem需要Dcm来上报事件状态;PduR又需要CanIf和CanTp来收发CAN报文。说白了,这是一条链:Dcm -> PduR -> CanTp -> CanIf。任何一个环节断了,诊断通信就玩不转。

我建议你在依赖检查时,重点关注“Missing Dependency”和“Version Mismatch”这两类错误。版本不匹配最常见,比如Dcm模块是4.4.0的,但PduR模块是4.2.2的,CFG Pro会直接报错,不让生成代码。

2.5 知识体系与核心逻辑

为了让你更直观地理解这一章的内容,我画了一张图。这张图展示了开发环境搭建的完整流程,以及各工具之间的数据流转关系。

诊断栈开发环境搭建 - 核心逻辑图 DaVinci Developer SWC设计 / Port接口定义 Configurator Pro BSW模块配置 / Dcm+Dem EB tresos Studio 工程创建 / 模块导入 导入SWC 配置交换 核心BSW模块依赖链 Dcm PduR CanTp CanIf Dem 事件上报 依赖检查:确保所有模块版本匹配,且依赖链完整 Missing Dependency 或 Version Mismatch 会阻止代码生成

这张图你看懂了吗?说白了,Developer负责“画”,Configurator Pro和EB负责“配”。而Dcm和Dem的配置,必须建立在PduR、CanTp、CanIf这些底层模块都就绪的基础上。依赖检查就是确保这条链上没有断点。

我的经验: 在项目初期,我建议你先用Vector的工具链把Dcm和Dem的配置跑通一遍,然后再去碰EB。因为Vector的CFG Pro在依赖检查上更严格,报错信息也更清晰。等你熟悉了诊断栈的配置逻辑,再用EB就会觉得“哦,原来这里是一样的”。

好了,环境搭建就聊到这儿。工具装好了,模块导入了,依赖也检查通过了,下一章咱们就可以正式开始配置Dcm和Dem的核心参数了。记住,磨刀不误砍柴工,环境稳了,后面才学得踏实。


可可精品资料库