S32K344 MCAL 工程编译

一、 简介
  1. MCAL 介绍

通过参加 NXP 关于 S32K3xx 的培训,我对于 S32K344 的相关软件及开发工具有了一定的认知。对于 S32K344 所使用的软件 SW32K3_RTD_4.4_1.0.0 有了大概的认识。首先,需要提及的是原厂根据 S32K3xx 系列推出了新的软件平台——Real-Time Drivers(之后简称为 RTD)。该平台包含了 2 种不同风格的软件:一种是延续 SDK 风格的 RTD LLD(Low Level Driver),可以通过 S32 Design Studio 进行配置、编译以及调试;另一种就是 RTD MCAL,该 MCAL 可以使用 EB Tresos Studio 27.1.0(目前建议使用 27.1.0 版本的软件,其他版本可能无法正常适配 SW32K3_RTD_4.4_1.0.0)。

 

图 1.1 RTD 配置工具

 

  1. MCAL 示例工程介绍
建议 RTD MCAL 安装至默认路径下:C:\NXP\SW32K3_RTD_4.4_1.0.0。安装完毕,在该路径下的“\eclipse\plugins\”文件夹中,我们可以发现 NXP 已经提供了相关模块的示例工程,以 I2C 模块为例,我们可以在“I2c_TS_T40D34M10I0R0”的路径下面找到“examples”的文件夹。该文件夹中我们可以发现两种类型的文件,“EBT”是 MCAL 示例工程;“S32DS”则是 LLD 的示例工程。


图 1.2 RTD 示例工程

我们需要查看 S32K344 的 MCAL 工程,以 S32K344 的 I2C Flexio 工程为例,进入 “C:\NXP\SW32K3_RTD_4.4_1.0.0\eclipse\plugins\I2c_TS_T40D34M10I0R0\examples\EBT\I2c_HLD_FLEXIO_Transfer_S32K344”,我们可以发现相关的文件,其中“TresosProject”是我们需要导入到 EB 中进行配置的工程;“Makefile”则是用于工程编译及构建。



图 1.3 RTD MCAL 示例工程关键文件

  

二、 工程编译
  1. 准备工作
 在编译组建之前,我们可以看到工程“generate”文件夹中的“include”以及“src”均为空,同时工程路径下的“out”文件夹也没有任何内容。



图 2.1 MCAL 示例工程未编译状态

在编译之前,我们需要对于编译脚本进行修改,打开工程目录下的“project_parameters.mk”文件,修改变量值:



图 2.2 修改编译脚本

需要注意的是这 3 个变量值的路径需要是斜杆“/”,采用“\”会导致相关文件无法被找到。

紧接着,由于我们接下来会使用命令行(cmd.exe / powershell.exe)进行配置代码生成,编译组建等工作,所以我们需要使用到 make 工具链。当我们打开命令行,键入“make”,敲击回车,如果该命令未被识别,则意味着我们需要安装 make 工具。mingw 以及 cygwin 这些暂且不提,我们可以使用 S32DS 自带的 make 工具,不过需要添加系统环境变量,即将“D:\NXP\S32DS.3.4\S32DS\build_tools\msys32\usr\bin”路径添加到系统变量“Path”当中。




图 2.3 添加 make 工具链路径配置

 

  1. 代码生成
打开 cmd.exe 命令行程序,将路径切换至模块工程路径:“cd C:\NXP\SW32K3_RTD_4.4_1.0.0\eclipse\plugins\I2c_TS_T40D34M10I0R0\examples\EBT\I2c_HLD_FLEXIO_Transfer_S32K344”



图 2.4 切换路径

紧接着输入“make generate”,此时便会执行删除工程、导入工程到 workspace 以及最后的生成代码步骤。由于第一次生成该工程代码,所以在 workspace 中不存在同名的工程,此时报错属于正常现象。




图 2.5 代码生成流程

之后观察“generate”文件夹中可以发现有相应的配置代码生成。




图 2.6 生成配置代码

 

 

  1. 工程编译

在配置代码生成之后,就可以开始进行编译了。此时只需要在命令行程序中输入“make build”即可。



图 2.7 编译代码

之后前往“out”文件夹查看,如果存在“main.elf”,则证明编译组建完成,之后只需要将其导入 S32DS 调试即可。



图 2.8 生成 elf 文件

 

三、 参考资料
[1] NXP_S32K3XX_RTD开发环境搭建引导.pdf

相关视频

NXP S32K344 MCAL 编译

通过参加 NXP 关于 S32K3xx 的培训,我对于 S32K344 的相关软件及开发工具有了一定的认知。对于 S32K344 所使用的软件 SW32K3_RTD_4.4_1.0.0 有了大概的认识。首先,需要提及的是原厂根据 S32K3xx 系列推出了新的软件平台——Real-Time Drivers(之后简称为 RTD)。该平台包含了 2 种不同风格的软件:一种是延续 SDK 风格的 RTD LLD(Low Level Driver),可以通过 S32 Design Studio 进行配置、编译以及调试;另一种就是 RTD MCAL,本视频旨在介绍 S32K344 RTD MCAL 的一种编译方式。

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论