目录
EB Tresos Studio,简称EB,通过图形化的模式进行配置生成,并根据选项配置生成配置代码,即 MCAL 层各个模块的配置参数。
在 MCAL 代码中,分为静态代码和配置代码。静态代码,就是 AUTOSAR 规范内容,包含对硬件的封装以及标准化接口的封装;配置代码一般用于配置初始化结构体的内容,比如 控制器模式,波特率 等。
EB生成配置代码需要三样东西:plugin,xdm,以及代码生成器。
准备工作
plugin
plugin的作用分为以下三种:
1.对应模块的基本信息:包含芯片信息及其对应的外设资源,在创建工程时会用到。EB会根据所选芯片的型号找到对应的模块xdm,后续添加模块的时候所看到的模块就是以这种方式被EB扫描并展示出来;
2.配置信息:包含xdm路径,xdm是EB配置项的源文件,为开发提供可视化配置;
3.生成信息:生成代码时加载的代码生成器的路径;
总结来讲,就是 EB工具 和 生成配置代码需要的文件 间的纽带。但是,EB 还需要找到 plugin 才行。
在 EB\tresos目录下新建 " links " 文件夹(文件夹必须叫这个名字,不然 EB 工具不识别)。之后在文件夹下新建文本,在其内输入以下内容(你 plugin 所在的路径,此处以我桌面的文件夹举例),然后修改后缀改名为 link 。
path=C:/Users/xxx/Desktop/新建文件夹
PS:这里的斜杠是 “ / ” !!!
xdm
以单个模块为例,EB工具在配置过程中会使用到两个同名但内容不同的 .xdm 文件。
其中一个xdm包含的内容是包含配置项的文件,EB 会解析这些配置项并将其进行可视化,允许用户进行可视化配置;而另一个xdm是开发者在配置过程中生成的,用于保存配置内容的xdm。
配置项xdm,在 EB\tresos\autosar 目录下是EB软件到该版本为止,所支持的所有 AUTOSAR 版本。进入使用的版本目录下,有一个 arxml 文件。这个arxml 文件包含着 AUTOSAR 规范的所有模块配置。通过执行指令来将各个模块的 xdm 剥离出来,这就是最基本的配置文件。也可以对其进行修改,以满足某些特定需求。该xdm定义了每个配置项的数据类型,比如 bool 类型,整型 或者 浮点数 等。
对于保存配置的xdm,如果修改里面某个范围值比如波特率,如果在xdm中进行修改的话,配置界面中的值也会同步。
代码生成器
所谓代码生成器,就是在脚本里面提前准备好了 宏、函数名 等内容,就等着将配置参数填进去。需要注意的是,代码生成器中也可以对 EB 中的配置项进行约束,比如限制某些范围值,超出这个范围 EB 就会报错。
接下来,就可以生成配置代码了。
生成流程
首先EB 会根据 link 文件找到 plugin,并进一步确定芯片型号,以确定要加载的模块xdm。在完成配置之后,选择 “ generate ” 调用代码生成器生成配置代码。
至此,配置代码生成完成。