MCAL配置--新建工程

EB->File->New->Configuration Project

AUTOSAR Release Version:Mixed(或者某一版本)

Models->System(Autosar 3.2 and newer):

autosar 3.2及更新版本的autosar系统模板、软件组件模板和基本软件模块模板

next:

ECU ID:ECU名字

Target:主芯片类型

Default Generation Path:默认MCAL代码生成路径

Automatically add the minimum number of child elements in lists:自动在列表中添加最小数量的子元素

Use project specific settings:允许选择是否使用特定设置

Use Unix line endings for configuration data files:对配置数据文件使用Unix行尾

Unix行尾以字符串"\n"结尾

Generate code with Unix line endings:生成以Unix行结尾的代码

Enable Config Time support:启用配置时间支持

具体:选中则打开Pre Compile、Link、Post Build三个选项,每个选项都可单独选中或不选中,三个选项的不同选择可能会导致某些配置参数变为只读(比如只选择Pre Compile,那么Link以及Post Build这两个参数在配置模块(如MCU模块)的Config Variant配置变体参数时,理论上是只读的,实际上与芯片相关)。若不选中,按照默认设置,三个都选中(需芯片支持),SPC58默认允许模块Config Variant配置变体参数选择Pre Compile或Post Build。

一个源文件(.c)生成一个可执行文件(.elf(对应有操作系统,比hex多一些表头信息)或.hex(对应无操作系统,二进制文件,十六进制表达,除了实际的数据内容外,hex 文件还包含记录类型、地址信息和校验和等元数据)),需要经过预编译(宏替换、取消注释等,产出物为纯代码)、编译(生成汇编文件.asm)、汇编(生成可重定位的目标文件,重定位是指把程序的逻辑地址空间变换成内存中的实际物理地址空间的过程)、链接四个步骤,上述Pre Compile、Link、Post Build三个选项对应在四个步骤的某一个步骤或生成物进行配置。

Pre Compile:预编译,对应上述预编译阶段,通过宏定义Enable或者Disable一些模块,也可以通过宏定义定义常量用于配置。Pre Compile的优点是节省运行时开销,在预编译阶段就完成了配置。缺点是只能配置源文件,不能配置库或者中间文件,因此保密性差,更改参数也需重新编译(广义上的编译,等同上述四个步骤)。

Post Build:对应上述链接后生成的可执行文件,方法是把配置参数单独放在一个内存区域(ROM),这个区域可以被单独刷写(flash擦写工具、UDS服务、Bootloader修改参数),OEM(整车厂)通过Post Build可以生成二进制文件,并单独更新配置(OEM只能更新部分参数)到ECU。Post Build分为两种:

1.配置参数只有一份,单独保存在flash的一个固定区域,可以单独被更新以修改参数配置;

2.配置参数提前配置好几份放在flash,不能修改参数配置,只能从预先放置的flash中的配置中选一份配置。

Link:对应链接阶段,适合对没有C源码的库(.a、.lib)或者中间文件(.o)进行配置。

继续创建工程:

可以点击Finish完成创建,

也可点击Next进入Module Configurations:双击左边模块(如Mcu、Adc)即可添加至Module Configurations,每个模块包括名字、模型(版本)、使能与否、生成代码与否

右边一栏为帮助信息,支持目录、搜索、相关项、书签、索引五种方式查找相关帮助资料。

点击Next进入导入导出界面,可以选择在项目创建后运行所有导入程序。(暂未使用过导入导出)

点击Finish即可创建项目。

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值