第一章 EB tresos入门:AUTOSAR简介、EB tresos Studio概述、安装与许可配置、工作区概念
各位同学,大家好。我是你们的讲师,一个在汽车电子圈摸爬滚打了十几年的老工程师。今天咱们正式开始《EB tresos入门到项目应用全解》的第一课。
说实话,每次带新人,我都要先问一句:「你知道AUTOSAR是干嘛的吗?」很多人能背出定义,但一问到实际项目里怎么用,就卡壳了。嗯,这很正常。咱们今天就把这层窗户纸捅破。
1.1 AUTOSAR到底是什么?
AUTOSAR,全称是AUTomotive Open System ARchitecture。说白了,就是汽车电子软件的一个标准化平台。
你想想看,以前做ECU开发,每家芯片厂都有自己的底层驱动,换个芯片,代码几乎要重写。我2010年刚入行那会儿,就干过这种蠢事——给一个项目写了三套底层代码,就因为用了三家不同的MCU。那叫一个痛苦。
AUTOSAR要解决的核心问题就两个:
- 软硬件解耦:应用层代码不用管你底层是什么芯片
- 代码复用:同一个功能模块,换个项目直接拿来用
它把ECU软件分成了三层:
- 应用层(ASW):写业务逻辑的地方,比如车窗控制、雨刮策略
- 运行时环境(RTE):相当于一个「软件总线」,负责应用层和底层通信
- 基础软件层(BSW):包括MCAL(微控制器抽象层)、ECU抽象层、服务层等
我个人习惯把BSW理解成「操作系统+驱动库」。你写应用的时候,根本不用管底层寄存器怎么配,调用标准接口就行。
核心要点:AUTOSAR不是一套代码,而是一套规范。各家工具链(比如EB tresos、Vector DaVinci)都是按照这个规范来生成代码的。
1.2 EB tresos Studio概述
EB tresos Studio,是Elektrobit公司出品的AUTOSAR配置工具。在行业内,它和Vector的DaVinci Developer是两大主流。
我为什么推荐EB tresos?两个原因:
- 上手快:界面比Vector清爽,新手不容易懵
- 对MCAL支持好:很多芯片厂(NXP、Infineon、Renesas)的官方MCAL包,都是基于EB tresos的
EB tresos Studio主要干三件事:
- 配置BSW模块:比如配置CAN、SPI、GPT(定时器)这些底层模块的参数
- 生成代码:根据你的配置,自动生成C代码和头文件
- 管理项目:把各个模块的配置整合到一起,避免冲突
我记得第一次用EB tresos的时候,打开界面一看,满屏的树形菜单和参数表格,头都大了。后来才发现,这东西就是个「填表工具」——你把每个模块的参数填对,代码就自动生成了。
小技巧:EB tresos的配置本质上是XML文件。如果你熟悉XML结构,可以直接用文本编辑器修改,比在GUI里点来点去快得多。不过新手不建议这么干,容易配错。
1.3 安装与许可配置
安装EB tresos其实不复杂,但有几个坑我得提前说。
第一步:获取安装包
EB tresos有多个版本,目前主流的是EB tresos Studio 27.0和28.0。你需要从Elektrobit官网或者芯片厂提供的SDK里获取安装包。
第二步:安装过程
- 双击安装程序,一路Next就行
- 注意安装路径不要有中文和空格
- 建议安装在C盘根目录下,比如
C:\EB\tresos\Studio_27.0
第三步:许可配置(重点!)
EB tresos使用浮动许可证(Floating License)。你需要配置一个License Server地址。
我曾经在一个项目里,因为许可证配置不对,折腾了整整一天。最后发现是环境变量没设对。
配置方法如下:
- 打开环境变量设置(右键「此电脑」→「属性」→「高级系统设置」→「环境变量」)
- 新建系统变量
LM_LICENSE_FILE,值设为port@server_ip,比如27000@192.168.1.100 - 重启EB tresos
避坑指南:我曾经遇到过一个问题——明明License Server是通的,但EB tresos就是报错「Cannot checkout license」。后来发现是防火墙把端口给拦了。所以,记得在防火墙里放行27000端口(或者你实际用的端口)。
另外,有些芯片厂会提供「节点锁定」的许可证(Node-Locked License),这种不需要Server,直接把license文件放到安装目录下的 license 文件夹就行。
1.4 工作区概念
工作区(Workspace)是EB tresos里最重要的概念之一。说白了,它就是你的项目「大本营」。
一个工作区可以包含多个项目。比如你同时做两个ECU的开发,可以在同一个工作区里切换。
工作区的目录结构:
Workspace/
├── .metadata/ # Eclipse元数据,别手动改
├── Project_A/ # 项目A
│ ├── config/ # 配置文件(.arxml)
│ ├── generated/ # 生成的代码
│ └── output/ # 输出文件
├── Project_B/ # 项目B
└── ...
我个人习惯把工作区放在一个单独的盘符下,比如 D:\EB_Workspace。为什么?因为工作区里的 .metadata 文件夹会越来越大,放C盘容易爆。
创建新工作区的步骤:
- 启动EB tresos,会弹出「Workspace Launcher」对话框
- 点击「Browse」,选择一个空文件夹
- 勾选「Use this as the default and do not ask again」(建议新手先别勾,免得切工作区时找不到入口)
- 点击「Launch」
嗯,这里要注意:工作区路径不要有中文,不要有空格。别问我为什么知道——我见过有人把工作区放在「桌面」上,结果编译报错,查了半天发现是路径里有空格。
核心要点:工作区只保存配置信息,不保存生成的代码。生成的代码在项目文件夹里。所以,如果你要备份项目,直接复制项目文件夹就行,不用管工作区。
1.5 本章小结
好了,第一课的内容就这么多。咱们回顾一下:
- AUTOSAR是汽车电子的标准化平台,核心是软硬件解耦
- EB tresos是配置AUTOSAR BSW模块的工具,本质是「填表生成代码」
- 安装时注意许可证配置,防火墙别拦端口
- 工作区是项目大本营,路径别带中文和空格
下一章,咱们会正式创建一个EB tresos项目,配置第一个BSW模块——GPT(定时器)。到时候我会手把手带你走一遍流程。
记住,工具只是工具,理解背后的原理才是关键。有问题随时在群里问,我看到就会回。
下课。