大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是MCUXpresso for VS Code开发环境搭建及SDK工程导入。

  MCUXpresso IDE(包括其前身 LPCXpresso IDE、Kinetis Design Studio)是恩智浦软件团队持续开发了十多年的免费集成开发环境,现在功能已经相当完善,IDE 里面菜单与功能选项无数,每一项都凝结了软件团队的心血。

  近年来 Visual Studio Code 在嵌入式领域的用户越来越多(主要原因是其通用性,不与任何一家 MCU 原厂深度绑定,且第三方插件众多,生态强大,新功能支持更灵活),为了给恩智浦用户更灵活的开发体验,恩智浦于2023年7月正式推出了 MCUXpresso for Visual Studio Code 插件,把 MCUXpresso IDE 里对 NXP MCU 的支持以及一些核心功能都带到了 Visual Studio Code 里。

  今天痞子衡要介绍的是 MCUXpresso for VS Code 开发环境搭建以及如何导入恩智浦 SDK 工程开发调试,算是 MCUXpresso for VS Code 入门第一步。

一、MCUXpresso for VS Code概述

  在恩智浦官网 MCUXpresso for VS Code 主页 我们可以看到其原理框图(下图下半部分),我们将其和 MCUXpresso IDE 原理框图(下图上半部分)放在一起比较,会很容易发现它们的异同。

  相同的地方是,都能做源代码编辑、工程组织管理,GNU 编译工具链集成、调试器支持。不同的地方在于 MCUXpresso IDE 有自己原生的各种调试组件及其特色的 Linker 文件图形化编辑器,而 MCUXpresso for VS Code 除了依托于 VS Code 的插件市场以及 Git 源代码版本管理,还增强了对 Zephyr 相关的支持(West、KConfig、Device Tree)。

二、搭建开发环境

  现在开始搭建开发环境,毕竟是 VS Code 的插件,那么首先就是安装一个 VS Code,需要从如下微软官网下载安装,痞子衡安装得是 V1.96.2 版本。

  打开 VS Code,在左侧工具栏 "Extensions" 里搜索 MCUXpresso for VS Code 即可找到本文主角,直接点 "install" 安装(痞子衡安装的插件是 v24.10.78 版本)。安装完成之后,即可在工具栏里看到 MCUXpresso 快捷入口。

  此时只是搭好了 MCUXpresso for VS Code 基本代码编辑与工程管理环境,但是工程开发所需的编译调试工具还没有就位。为了方便用户一键安装全部依赖工具,恩智浦额外提供了 MCUXpresso Installer (Windows版本),下载这个工具,双击打开,利用它进一步安装编译调试等工具(分别安装 MCUXpresso SDK Developer、LinkServer、SEGGER J-Link)。

  • Note: 如果本地已经已经安装了 Git、CMake、Python 等工具,MCUXpresso Installer 会识别并使用,不会重复安装。

三、导入SDK工程

  MCUXpresso for VS Code 下支持两种不同的工程导入方式,一种是 Git Repo 方式(恩智浦已经将 SDK 部署到 github 了),另一种是本地 SDK ZIP 包方式(与 《MCUXpresso IDE下SDK工程导入》 方法差不多),本文主要介绍后一种。

  我们可以从 恩智浦 SDK builder 网站下载一个软件包 SDK_2_16_000_MIMXRT1060-EVKB.zip(Toolchain 需包含 GCC),然后在 VS Code 界面 Import Repository 里选择 LOCAL ARCHIVE,选中下载好的软件包,Location 里设置 SDK 解压路径,点击 Import。

  这时候 SDK_2_16_000_MIMXRT1060-EVKB.zip 已经被导入到当前 VS Code 里,下一步利用 Import Example from Repository 创建一个具体例程,Template 选项里可以看到 SDK 包里全部例程,这里选择 demo_apps/hello_world,再在 Location 里设置用户例程路径,点击 Create。

  现在我们就拥有了一个 VS Code 下的 hello_world 工程,在左侧 PROJECTS 下面可以看到工程源文件,可以对工程进行编译,此时给 RT1060-EVKB 板卡通上电插上调试器(板载 DAP-Link 或者外接 J-Link 均可),就可以直接下载调试了。

  至此,MCUXpresso for VS Code开发环境搭建及SDK工程导入痞子衡便介绍完毕了,掌声在哪里~~~

欢迎订阅

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

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

痞子衡嵌入式:MCUXpresso for VS Code开发环境搭建及SDK工程导入的更多相关文章

  1. 痞子衡嵌入式:ARM Cortex-M文件那些事(3)- 工程文件(.ewp)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家讲的是嵌入式开发里的project文件. 前面两节课里,痞子衡分别给大家介绍了嵌入式开发中的两种典型input文件:源文件(.c/.h/.s). ...

  2. 痞子衡嵌入式:探析开启CRC完整性校验的IAR工程生成.out和.bin文件先后顺序

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是开启CRC完整性校验的IAR工程生成.out和.bin文件先后顺序问题. 痞子衡之前写了一篇 <在IAR开发环境下为工程开启CRC ...

  3. 痞子衡嵌入式:飞思卡尔Kinetis开发板OpenSDA调试器那些事(上)- 背景与架构

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔Kinetis MCU开发板板载OpenSDA调试器(上篇). 众所周知,嵌入式软件开发几乎离不开调试器,因为写一个稍有代码规模 ...

  4. 嵌入式开发之zynq——zynq开发环境搭建

    http://blog.csdn.net/shushm/article/details/51728690 http://www.cnblogs.com/fpga/p/4593602.html http ...

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

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

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

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

  7. 痞子衡嵌入式:在MDK开发环境下将关键函数重定向到RAM中执行的几种方法

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是在MDK开发环境下将关键函数重定向到RAM中执行的几种方法. 这个关键函数重定向到 RAM 中执行系列文章,痞子衡已经写过 <IA ...

  8. 痞子衡嵌入式:把玩i.MXRT1062 TencentOS Tiny EVB_AIoT开发板(1) - 开发环境搭建与点灯

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT1062 TencentOS Tiny EVB_AIoT开发板环境搭建与点灯. 腾讯 TencentOS 团队于2021年1 ...

  9. 痞子衡嵌入式:走进二维码(QR Code)的世界(2)- 初体验(PyQt5.11+MyQR2.3+ZXing+OpenCV4.2.0)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是走进二维码(QR Code)的世界专题之初体验. 接上篇 <走进二维码(QR Code)的世界(1)- 引言> 继续更文,在 ...

  10. 痞子衡嵌入式:MCUXpresso IDE下使用J-Link下载算法在Flash调试注意事项(i.MXRT500为例)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是MCUXpresso IDE下使用J-Link下载算法在Flash调试注意事项. 痞子衡前段时间写过一篇小文<为i.MXRT设计更 ...

随机推荐

  1. 鲲鹏(ARM64)+麒麟(Kylin v10)离线部署 KubeSphere

    作者:社区用户-天行1st 本文将详细介绍,如何基于鲲鹏 CPU(ARM64) 和操作系统 Kylin V10 SP2/SP3,利用 KubeKey 制作 KubeSphere 和 Kubernete ...

  2. KubeSphere 多行日志采集方案深度探索 

    作者:大飞哥,视源电子运维工程师,KubeSphere 用户委员会广州站站长 采集落盘日志 日志采集,通常使用 EFK 架构,即 ElasticSearch,Filebeat,Kibana,这是在主机 ...

  3. bash 连接操作符(& && | 等)的使用

    链式操作(Chaining Operators),就是用于将多个命令组合在一起,根据操作符类型执行各种复杂指令.链式操作常用于你在交互shell中写下一长串指令执行的时候,它让shell脚本的自动化能 ...

  4. vs程序员使用windbg实例

    如果使用32位的windbg,windbg加载完dump文件后,窗口会显示wow64cpu,表示是64位进程,需要切换到64位环境: .load wow64exts !sw 设置符号表(crtl+s) ...

  5. Java高并发Lock接口讲解,精准通知线程间的执行顺序

    题目:两个线程操作一个变量,实现两个线程对同一个资源一个进行加1操作,另外一个进行减1操作,且需要交替实现,变量的初始值为0.即两个线程对同一个资源进行加一减一交替操作. Lock接口与Conditi ...

  6. SpringBoot读取properties文件配置项

    使用SpringBoot开发过程中,难免需要配置相关数据项,然后在Java代码中@Autowired注入并使用. 我们应该如何读取properties文件中的配置项呢? 基于SpringBoot项目, ...

  7. Edge缓存清理操作说明

    1. 打开Edge浏览器 2. 点击屏幕右上角三个点的按钮 3. 在出现的菜单里面选择"设置" 4. 在出现页面里面左侧选择"隐私.搜索和服务",然后右侧点击& ...

  8. 轻松使用线程: 不共享有时是最好的——利用 ThreadLocal 提高可伸缩性

    Brian Goetz (brian@quiotix.com), 软件顾问 简介: ThreadLocal 类是悄悄地出现在 Java 平台版本 1.2 中的.虽然支持线程局部变量早就是许多线程工具( ...

  9. pycharm之debugger使用

    1.未打断点运程序,输出全部结果 2.打断点后,点击debug,代码执行到断点前停止(断点所在行不执行) 3.step over,是在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,而是将子 ...

  10. MySQL原理简介—11.优化案例介绍

    大纲 1.禁止或改写SQL避免自动半连接优化 2.指定索引避免按聚簇索引全表扫描大表 3.按聚簇索引扫描小表减少回表次数 4.避免产生长事务长时间执行 1.禁止或改写SQL避免自动半连接优化 (1)业 ...