一、E3 中 MCAL 应用

1.1、MCAL 安装

首先从官网中下载: SemiDrive_E3640_MCAL_Pkg_v1.1.0_4_30.exe

首页 - 客户支持系统 - 芯驰科技SemiDrive

下载后双击进行安装:






 安装后如下所示:



在 Semidrive_AutoSAR_MCAL_package_v1.1.0 中有很多的工程配置如下:

The below modules are consisted of in this package (in MCAL_release/mcal):

Gpt 、Dio、 Mcu、 Port、Can、Lin、Icu、EthTrcv、 Crypto

 Pwm、Wdog、CanTrcv、Spi、IrqM、Adc、Ethernet、Fls、Sent

进入 Mcal_release 的 mcal demo 中可以发现如下例子:

D:\Semidrive\E3\E3640\Semidrive_AutoSAR_MCAL_package_v1.1.0\MCAL_release\mcal\Gpt_TS_T01D20M1I1R0

 

具体介绍如下:

(1)、include and src:源码文件,编译时候需要复制一份

(2)、generate:产生用于EB中的 cfg 配置文件

(3)、other folder and files: Gpt EB tresos plugin.

 

1.2、 Build MCAL test suite

编译环境依赖过程:

(1)、Linux中已经安装了工具链(arm-none-eabi-gcc, v7.3.1),并在PATH环境变量中已经添加了arm-none-eabi-gcc。

(2)、对 Windows系统,需要准备了mysys和gcc环境'msys_toolchains.7z'。用户可以先解压文件到msys_toolchains.7z 文件夹中。然后,进入文件夹"/tools/script”,执行批处理脚本“startup_bash.bat”。用户可以进入msys环境。如下图所示:

点击脚本命令:



这样 E3 开发板运行所需要的环境配置既可以完成,非常的方便,之后便可以进行工程编译。

(3)编译过程基于makefile 方式进行编译。您可以基于 demo更新生成文件或创建合适的文件。后面将通过IAR 或者是 windows 方式进行编译,生成可执行文件。

(4)、boot rom将验证包是否有效。我们需要将生成的原始二进制文件进行验证打包成为boot的一部分,之后在验证镜像。具体步骤如下:(E3_ref_144 board作为实例)

进入如下目录:

D:\Semidrive\E3\E3640\Semidrive_AutoSAR_MCAL_package_v1.1.0\MCAL_release

这里可以进行 MCAL test suite


由于不同版本的mcal demo 不同,借用官网的指令如下:

Build cmd:

To build the test suite, run

“./tools/script/bld_release.sh E3_ref_144 sf”

 

Sign cmd:

To sign the image, run

“./tools/sign_tool_e3/run_sign.sh E3_ref_144 sf”


“E3_ref_144.elf.bin.pac” wil be generate when success build and sign.

For E3_ref_gateway, you may want to boot multi cores, then the sign/package

command is:

“./tools/sign_tool_e3/run_sign.sh E3_ref_gateway sf sx”


Reference boards which are supported in this release, are as followed:

(1)、E3_ref_gateway

(2)、E3_ref_motor

(3)、E3_ref_176

(4)、 E3_ref_144

 

以下是我编译的部分log:

D:\SemiDriver\E3\ssdk>sh build.sh -b e3_gateway -p ref


Loaded configuration 'D:/SemiDriver/E3/ssdk/boards/e3_gateway/sf/projects/ref/defconfig'

Configuration saved to 'D:/SemiDriver/E3/ssdk/boards/e3_gateway/sf/projects/ref/.config'

Build [Board]: e3_gateway [Core]: sf [Project]: ref

make[1]: Entering directory '/d/SemiDriver/E3/ssdk'

BOARD = e3_gateway

CORE = sf

PROJECT = ref

SSDK_TOOLCHAIN = gcc

OSTYPE = msys

TOOLCHAIN_PREFIX = /d/SemiDriver/E3/ssdk/prebuilts/windows/gcc/arm/bin/arm-none-eabi-

 

-----generating PAC  without parition : D:\SemiDriver\E3\ssdk\tools\sdtools\pac\e3_gateway\ref\emmc_e3_gateway.pac

../../prebuilts/windows/python-3.7.0/python.exe pactool/pactool make_pac_image_no_gpt

--output pac/e3_gateway/ref/emmc_e3_gateway.pac

--allow_empty_partitions

--preload boot0:temp/ssdk_signed_normal.bin

--da FDA:temp/dloader_e3_gateway_signed.bin

--preload boot1:temp/ssdk_signed_backup.bin

--preload boot2:temp/ssdk_signed_third.bin



[info] partition: boot0, size:0x00282000, offset:0x00004400, type:BOOT0

[info] partition: boot1, size:0x00282000, offset:0x00286400, type:BOOT1

[info] partition: boot2, size:0x00282000, offset:0x00508400, type:BOOT2

[info] partition: FDA, size:0x0005C080, offset:0x0078A400, type:FDA

exe_pac_end

 

生成的文件如下所示:

 

1.3、IAR 工程

IAR 软件:目前我使用的是 IAR for ARM V8.53.6版本软件

其官网为 IAR Academy On Demand ,是付费使用的软件,需要取得License 才能使用。



为了能够正确编译工程,安装 IAR 完成后需要进行如下操作:

1.Copy folder "debugger" and "devices" into  the IAR installation directory

    "C:\Program Files (x86)\IAR Systems\Embedded Workbench 8.5\arm\config\ "

2.Open IAR software

 

打开semidrive 提供的Demo如下所示,右击build 即可:



可以看到IAR 编译工程成功!

二、内容总结

       本博文主要介绍了使用基于 E3的semidrive 的使用方法,使用IAR 和cmd 方式进行mcal suite test 。后如是板子做好,还可以进步演示如何进行下载

三、参考资料

【1】《Semidrive_E3_Mcal_Release_Note.pdf》

【2】芯驰官网资料

首页 - 客户支持系统 - 芯驰科技SemiDrive

Geronimo

Geronimo

7 个月前