大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是MCUXpresso IDE下SDK工程导入与workspace管理机制

  MCUXpresso IDE是恩智浦软件团队倾注很大心血研发的免费集成开发环境,基本上一般MCU开发IDE有的功能它都有,一般IDE没有的功能它也有。但是酒香也怕巷子深,网上关于MCUXpresso IDE教程太少,很多人连MCUXpresso IDE基本操作都不熟练,也就更谈不上去接触它功能强大的一面,工具推广任重道远,痞子衡且去做这个布道师吧。

  今天痞子衡要介绍的是MCUXpresso IDE联合官方SDK软件包的workspace管理机制,算是MCUXpresso IDE入门第一步。

一、准备开发环境

  首先需要准备好环境,包含必要的软件,痞子衡的环境如下:

  • 集成开发环境: MCUXpresso IDE v11.2.1_4149,点此下载
  • 软件开发包: SDK_2.8.0_EVK-MIMXRT595_PRC(Toolchain需包含MCUXpresso IDE),点此下载

二、Workspace机制

  第一次打开MCUXpresso IDE,首先会让你选一个Workspace路径,如果不主动选,会有一个默认的路径。Workspace其实是所有基于Eclipse的工具的通用概念,对于嵌入式工程来说,它主要用于集中放置项目的所有资源,包括工程源文件以及MCUXpresso IDE本身的配置等。现在你对Workspace作用可能还没深刻感受,没关系,咱们继续往下看。

三、导入SDK工程

  选好Workspace路径便会进入MCUXpresso IDE主界面,在左侧Quickstart Panel有三种进入工程的方法,第一种是从零开始创建全新工程(这个痞子衡不推荐),后面两种导入工程方式才是比较推荐的,因为基于一个现有工程去改,会让你更快地得到你想要的工程。

  • Import SDK example(s): 从恩智浦SDK包里导入示例工程
  • Import project(s) from file system: 从本地直接导入已有工程。

  那么对于恩智浦SDK包来说,两种导入工程方式有什么区别呢?咱们以下载好的SDK_2.8.0_EVK-MIMXRT595_PRC.zip包为例。

3.1 Import SDK example(s)

  先来看第一种 Import SDK example,默认Installed SDKs界面框里没有RT500,我们直接将SDK_2.8.0_EVK-MIMXRT595_PRC.zip包(解压亦可)拖到Installed SDKs界面框中。

  这时候Installed SDKs界面框里可以看到RT500的SDK包,选中它继续操作来导入SDK包里的example,我们就选demo_apps下的hello_world例程。

  导入完成后,在workspace路径下,你可以看到多了一个名为evkmimxrt595_hello_world文件夹,这个文件夹下既有MCUXpresso IDE的工程文件(.project/.cproject),也有SDK包里hello world例程所需的全部源文件。是的,Import SDK example 操作会从SDK包里拷贝出全部必要的文件组成一个独立的项目文件夹,从此这个项目文件夹将不再依赖原始的SDK包。

  上述操作得以实现,主要依赖SDK包里存放的如下xml描述文件,这些xml会指示MCUXpresso IDE在导入中创建工程文件,以及重组独立文件夹。

\SDK_2.8.0_EVK-MIMXRT595_PRC\EVK-MIMXRT595_manifest_v3_6.xml
\SDK_2.8.0_EVK-MIMXRT595_PRC\boards\evkmimxrt595\demo_apps\hello_world\hello_world.xml

3.2 Import project(s) from file system

  再来看第二种 Import project(s) from file system,这是从本地直接导入现有工程,那么解压后的SDK_2.8.0_EVK-MIMXRT595_PRC包里有没有工程呢?我们试着导入看看瞧:

  我们发现SDK包里仅有dsp相关的例程,并没有上一种 Import SDK example 方式看到的那么多基础例程,这是为何?其实如果你认真看过SDK包里\boards\evkmimxrt595\demo_apps\hello_world文件夹下的内容,你会发现存在IAR/MDK工程文件,但时并没有MCUXpresso IDE的工程文件。因此这种导入方式,并不适用原始SDK包,它更适合经过上一种 Import SDK example 方式导入后生成的独立项目文件夹(文件夹里要包含.project/.cproject文件)。

  最后再提一下上图中红框标起来的 Copy projects into workspace 选项,对于一个放置在本地的包含.project/.cproject文件的独立项目文件夹,导入过程中如果勾选这个选项,那么workspace路径下也会被复制一份项目,这样workspace路径与project路径是一致的。如果不勾选这个选项,则两个路径不一致,这会在工程编译时受影响,因为默认工程MCU C Compiler/Includes选项里用得路径就是基于workspace_loc路径,关于这个会在后面文章继续讲。

  至此,MCUXpresso IDE下SDK工程导入与workspace管理机制痞子衡便介绍完毕了,掌声在哪里~~~

欢迎订阅

文章会同时发布到我的 博客园主页CSDN主页知乎主页微信公众号 平台上。

微信搜索"痞子衡嵌入式"或者扫描下面二维码,就可以在手机上第一时间看了哦。

痞子衡嵌入式:MCUXpresso IDE下SDK工程导入与workspace管理机制的更多相关文章

  1. 痞子衡嵌入式:MCUXpresso IDE下SDK工程在Build配置上与IAR,MDK差异

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是MCUXpresso IDE下SDK工程在Build配置上与IAR,MDK差异. 恩智浦 SW 团队每个季度都会公布 SDK.Tool ...

  2. 痞子衡嵌入式:恩智浦MCUX SDK在GitHub上线了

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家讲的是恩智浦MCUX SDK 在GitHub上线一事. 其实在差不多一个月前(2021年1月6日),恩智浦MCUX SDK就在GitHub悄悄上 ...

  3. 痞子衡嵌入式:MCUXpresso IDE下添加新路径下源文件进工程编译的方法

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是MCUXpresso IDE下添加新路径下源文件进工程编译的方法. 接着上篇文章 <MCUXpresso IDE下SDK工程导入与 ...

  4. 痞子衡嵌入式:MCUXpresso IDE下工程链接文件配置管理与自动生成机制

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是MCUXpresso IDE下工程链接文件配置管理与自动生成机制. 痞子衡在 2018 年初写过一个专题 <嵌入式开发文件系列&g ...

  5. 痞子衡嵌入式:MCUXpresso IDE下将应用程序RW段分散链接的几种方法

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是MCUXpresso IDE下将应用程序RW段分散链接的几种方法. 早期的 MCU 芯片,一般都会嵌入内部 Flash 和 RAM,并且 ...

  6. 痞子衡嵌入式:MCUXpresso IDE下将关键函数重定向到RAM中执行的几种方法

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是MCUXpresso IDE下将关键函数重定向到RAM中执行的几种方法. 前段时间痞子衡写了一篇 <在IAR开发环境下将关键函数重 ...

  7. 痞子衡嵌入式:超级下载算法RT-UFL v1.0在恩智浦MCUXpresso IDE下的使用

    痞子衡主导的"学术"项目 <RT-UFL - 一个适用全平台i.MXRT的超级下载算法设计> v1.0 版发布近 4 个月了,部分客户已经在实际项目开发调试中用上了这个 ...

  8. 痞子衡嵌入式:MCUXpresso IDE下将源码制作成Lib库方法及其与IAR,MDK差异

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是MCUXpresso IDE下将源码制作成Lib库方法及其与IAR,MDK差异. 程序函数库是一个包含已经编译好代码和数据的函数集合,这 ...

  9. 痞子衡嵌入式:MCUXpresso Config Tools初体验(Pins, Clocks, Peripherals)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是MCUXpresso Config Tools三大件(Pins, Clocks, Peripherals). 不知道大家有没有这样的感受 ...

随机推荐

  1. eclipse 老坑巨滑之内存溢出OOM

    绪:今天接手一个古老项目,tomcat6+jdk6.被   java.lang.OutOfMemoryError: PermGen space  啪啪打脸, 网上确实有很多解决方法,主要有三种类型:一 ...

  2. pthread 条件变量

    在上一篇博客互斥量中,解决了线程如何互斥访问临界资源的问题. 在开始本文之前,我们先保留一个问题:为什么需要条件变量,如果只有互斥量不能解决什么问题? API init/destroy 条件变量的数据 ...

  3. moviepy音视频剪辑:视频剪辑基类VideoClip详解

    ☞ ░ 前往老猿Python博文目录 ░ 一.概述 在<moviepy音视频剪辑:moviepy中的剪辑基类Clip详解>和<moviepy音视频剪辑:moviepy中的剪辑基类Cl ...

  4. PyQt(Python+Qt)学习随笔:QScrollBar以及QAbstractSlider滚动条部件功能详解

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一.概述 在Designer输入部件中Horizo ...

  5. 在浏览器中输入URL后,执行的全部过程。会用到哪些协议?(一次完整的HTTP请求过程)

    在浏览器中输入URL后,执行的全部过程.会用到哪些协议?(一次完整的HTTP请求过程) 整个流程如下: 域名解析 为了将消息从你的PC上传到服务器上,需要用到IP协议.ARP协议和OSPF协议. 发起 ...

  6. 学习笔记:Prufer 编码

    Prufer 编码可以将无根树与序列之间进行转化. 一个 \(n\) 个点.区分编号的无向图 和 Prufer 序列一定是一一对应的,下面会给出映射方式. 借此可以证明 Cayley 定理: \(n\ ...

  7. Java集合源码分析(一)——集合框架

    集合框架 集合框架如图所示 Java集合是Java提供的工具包,主要包括常用的数据结构,包括:集合.链表.队列.栈.数组.映射等. 集合的工具包位置是java.util.* 集合主要可以分为五类: L ...

  8. 阿里云OSS生成sts令牌

    业务场景: 如果前端直接上传文件到OSS,势必要暴露令牌,无法精准控制上传内容等,使用临时令牌即可解决这个问题. 先去阿里云后台设置好token,角色,地区等 pom.xml <dependen ...

  9. Hive基础语法5分钟速览

    Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行. 其优点是学习成本低,可以通过 ...

  10. C++线程详细说明

    一.问题的提出 编写一个耗时的单线程程序: 新建一个基于对话框的应用程序SingleThread,在主对话框IDD_SINGLETHREAD_DIALOG添加一个按钮,ID为IDC_SLEEP_SIX ...