一、 前言
作为S32K 系列MCU 的新用户,入门的准备工作有哪些呢?一套用起来称心的开发工具肯定是必不可少的。本文要搭建的开发环境就是2020 年NXP 针对其通用汽车级MCU(S32K1xx 系列)推出的最新版本的IDE 和对应版本的SDK。
下面将和大家一起搭建开发环境、烧写简单的例程并导入已存在的工程。让我们开始行动吧!
二、 软件开发环境搭建(S32DS)
毫无疑问,任何IDE 都有各自的缺陷,本文介绍的S32DS(S32 Design Studio for ARM) 也有很明显的不足。例如:上次版本更新还是两年前,细节处理不够人性化,配置生成代码的风格与普通自编代码风格差距很大导致可读性变差等等。
但优势也是不可忽视的:开发环境完全免费,自动更新软件开发工具(SDK),针对S32K 系列的开发十分友好,大大降低了开发难度。
我们需要安装以下软件:
- S32 Design Studio for ARM v2.2
- S32DS Design Studio for ARM 2.2 Update 1 S32 SDK for S32K1xx SR RTM 3.0.3
- P&E Device Driver(随S32 DS 一并安装)
下面我们通过以下几个步骤,来搭建软件开发环境:
- NXP 账号注册并下载安装包
- S32 Design Studio 安装
- S32 Design Studio SDK 安装
1. NXP 账号注册并下载安装包
- 登录NXP官网,点击右上角“My NXP”,进入注册账号页面。

- 注册成功后,邮箱会收到一封NXP 发出的注册确认邮件,点击链接即可完成NXP 账户注册验证。

- 打开NXP官网 ,登录上文注册过的账号。在顶部搜索栏搜索:S32DS-ARM点击“ S32DS-ARM: S32 Design Studio for Arm® ”,并进入软件概述界面。

- 点击:“DOWNLOADS”,如下图所示选择目前最新最稳定的IDE 和SDK 版本,点击进入软件下载页面。
- SDK:S32 Design Studio for ARM 2.2 Update 1 S32 SDK for S32K1xx SR RTM 3.0.3 (REV UP1)
- IDE:S32 Design Studio for ARM 2.2 – Windows/Linux

- 其中IDE 有Windows 和Linux 版本,本文以Windows 版本为例。

安装包下载完毕,下面我们开始安装吧!
2. S32 Design Studio 安装
- S32 Design Studio for ARM 2.2 下载并解压安装,此时注册的邮箱会收到一封NXP 发出的软件下载确认邮件,包含此次下载的软件的激活码。

- 在安装的过程中,需要输入邮件中收到的16 位激活码。

- 选择激活模式。这里推荐选择Online 激活。

- 激活之后,只需要等待安装完成,安装完成之后,系统会开始“P&E Device Drivers”的安装。

- 这样,我们的S32 Design Studio for ARM 2.2 就安装完成了。

3. S32 Design Studio SDK 安装
- 运行S32 Design Studio for ARM Version 2.2。

- 设置Workspace 路径。建议不要出现中文字符以及空格。

- 点击“Help” ->“Install New Software”,选择“Add…”。

- 点击“Archive…”,将一开始下载的SDK 路径添加进来。将其命名为“S32DS Update1”,选择“OK”。

- 勾选所有可用项目。其中包括了之后要Build & Debug 的“S32 Design Studio S32K1xx RTM SDK 3.0.3”,选择“Next”,接受许可协议,开始安装进程,这过程中会询问你是否信任以下证书,选择信任即可,安装完毕,重新启动S32DS 即可。

- 点击“File” -> “New” -> “S32DS Project from Example”,可以看到SDK 已经安装到S32 DS 中并且可以被使用了。

三、 硬件开发环境搭建
我们以S32K144EVB(LQFP-100) 评估板为例,搭建硬件开发环境:
- S32K144EVB(LQFP-100) 评估板

- USB–microUSB 转接线

- 220V~12V 电源适配器(提供外接12V 电源)

- PEmicro Multilink Debugger 工具(Firmware 烧录)

四、 开发环境的使用
1. 内部例程的烧录
我们选用SDK 自带的简单例程“hello_world”直接运行,将程序烧录到开发板上。上述已备好的硬件使用到的有:S32K144EVB(LQFP-100) 评估板和USB–microUSB 转接线。
- 使用USB–microUSB 连接板子和电脑,连接示意图:

- 导入例程。点击“File” -> “New” -> “S32DS Project from Example”。

- 选择需要导入的项目。选择“S32DS Example Projects for S32K1xx” -> “S32K144_Project” -> “S32K144_Project_Hello”,点击“Finish”。

- 生成集成代码。通过“Project Explorer”窗口可看到目前导入的项目并没有“Generated Code”文件夹,所以需要点击“Project” -> “Generate Processor Expert Code”,否则编译会提示缺少头文件,导致编译报错。

- 开始Build。此时选中对应的项目,点击图标,即可开始Build,最终没有报错则Build 成功。



- 烧录程序& Debug。评估板上D1 闪红光表示程序正在烧录,录入完毕之后则可通过进行Debug。烧录成功后,按下SW2 按键,D11 会亮蓝色灯,松开按键后灯灭。

简单的例程运行成功啦,那么问题来了,电脑中已存在的工程如何导入到S32DS 里呢?
2. 外部工程的导入
下面我们来演示如何打开已存在的工程文件:
- 点击“File”或右键Project Explorer 的空白区域,点击“Import”。

- 点击“Browse…”添加选择工程文件的路径。

这样,一个已存在工程的导入就完成了,我们可以根据上文例程烧录的步骤,来运行此程序。
五、 关于软件开发环境的小建议
- 请安装本文中提到的S32DS 与S32K SDK 的版本,其他版本在Firmware Debug 可能会出现错误。
- 使用转接线时请注意连接线后是否支持数据传输,若无法下载Firmware 可尝试更换转接线再次尝试。
- Firmware Build 后,若S32DS workplace 的地址或是文件名发生改变,Firmware Debug 会出错,将workplace 改回原本的地址或文件名即可。
- 如果电脑装有加密软件,可能会导致S32K SDK 安装失败,需卸载加密软件后再安装S32DS 开发环境。
- S32DS for ARM IDE v2.2 优化了底层驱动程序,比R1 版本更加稳定可靠。且丰富了S32DS Project from Example,对初学者十分友好。如果你是S32K1xx系列MCU的新用户,之前没有使用过,则强烈推荐下载安装使用S32DS for ARM v2.2。因为其集成了最新最全的part number 支持(包括SDK 和调试器驱动),而且是后期S32K1xx 最新补丁包支持的主流工具链。
六、 参考文献
[1] S32DS_ARM_Installation_Guide_v2.2.pdf,NXP
[2] PS32K144HFT0VLLT-datasheet.pdf,NXP
[3] S32K144RM_Rev1_DraftH.pdf,NXP
-
mcu
+关注
关注
146文章
17388浏览量
353098 -
NXP
+关注
关注
60文章
1292浏览量
185705 -
开发
+关注
关注
0文章
370浏览量
40968 -
S32k144
+关注
关注
1文章
9浏览量
1943 -
S32DS
+关注
关注
0文章
9浏览量
878
发布评论请先 登录
相关推荐
搭建k8s需要买几台云主机?
零基础开发小安派-Eyes-S1 进阶篇 ——通过屏幕输入连接 Wi-Fi

零基础开发小安派-Eyes-S1【进阶篇】——初识 LVGL 并搭建最小工程

零基础开发小安派-Eyes-S1——初识LVGL并搭建最小工程
零基础开发小安派-Eyes-S1外设篇——I2S

k8s和docker区别对比,哪个更强?
k8s云原生开发要求

零死角带你玩转S32K344之实时时钟RTC

评论