MCUXpresso for VS Code -- 基于VSCode开发RT1176

MCUXpresso for VS Code 是nxp推出插件,旗下MCX LPC, Kinetis和i.MX rt等MCU,都能在VS Code平台进行嵌入式开发。功能框图如下:

请添加图片描述

前期准备:

软件环境:
windows(实际可以跨系统,linux和mac没有测试)
VS Code
ninja
CMake
GNU Arm Toolchain -------- 交叉编译工具链(笔者试过arm开发者官网下载工具链关联nxp插件,编译经常报错,所以建议这里下载安装 MCUXpresso IDE 安装包内有工具链 )
MCUXpresso IDE
Jlink驱动

CMake下载地址

Download | CMake

Ninja下载地址

Ninja, a small build system with a focus on speed (ninja-build.org)

MCUXpresso IDE 下载地址

Design : Product Download : Files (flexnetoperations.com)
解压安装后需要添加环境变量:

请添加图片描述

硬件环境:
rt1176开发板
Jlink调试器

关于MCUXpresso for VS Code如何安装使用,官网给出了安装使用说明:

Training: Walkthrough of MCUXpresso for VS Code - NXP Community

Home · nxp-mcuxpresso/vscode-for-mcux Wiki · GitHub

笔者使用过程中发现,有些功能受到网络等限制(毕竟没梯子)无法实现或体验极差,所以自己摸索了一种方法

1.VS Code 安装(下载安装方法教程一大把,不做具体介绍)

Visual Studio Code - Code Editing. Redefined

2.插件安装

如下位置,搜索MCUXpresso for VS Code插件进行安装

请添加图片描述

常见插件如:C/C++ C/C++ Extension Pack Cortex-Debug 等等都建议安装

请添加图片描述
请添加图片描述

3.MCUXpresso for VS Code 加载nxp sdk

官方教程推荐,安装好插件过后,使用 MCUXpresso Installer 工具安装所有软件,笔者试了安装工具下载速度贼慢,很难下载成功,于是放弃官方方法。下面方法只需要下载安装对应芯片SDK即可进行开发

请添加图片描述

通过窗口我们需要导入SDK便于后面工程搭建,这里插件给了几种方法,前两种我们不需要关注(要么网络不行加载失败,要么安装报错总之很难用),我们直接选择第三种方法,调用本地SDK,获取本地SDK是需要通过官网下载安装包,然后解压某个磁盘路径的

请添加图片描述
请添加图片描述

SDK下载地址:Select Board | MCUXpresso SDK Builder (nxp.com) sdk包下载尽量完整

请添加图片描述

导入成功后如下显示(这里笔者导入了1052和1176的SDK)

请添加图片描述

4.创建一个基础工程

选择 import Example from Repository,后期明白如何搭建可以直接选择 import Project.

需要注意的一点是工具链的选择,笔者试着下载独立工具链关联,工程编译会出现各种问题,所以暂时放弃,后期找原因。这里直接使用 MCUXpresso IDE 安装路径中的工具链,除此之外工作空间路径名称不能带空格,否则编译失败

请添加图片描述

5.编译和仿真

编译可点击齿轮图标,也可以右键弹窗选择更多功能

请添加图片描述

调试模式下我们也能添加调试断点,查看寄存器外设,堆栈等等信息
请添加图片描述

6.工程搭建后期

如果我们决定使用VS Code开发的NXP系列MCU,必须了解CMake基本知识,这里有两个文件十分重要:

CMakeLists.txt

ide_overrides.cmake

请添加图片描述

后期我们添加用户代码,经常要修改 CMakeLists.txt,所以我们得了解基本语法,除此之外ld链接文件语法也需要了解

7.VS Code 其他真香体验

请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/31957.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【01】基础知识:typescript安装及使用,开发工具vscode配置

一、typescript 了解 typeScript 是由微软开发的一款开源的编程语言。 typeScript 是 javascript 的超级,遵循最新的 es6、es5规范。 typeScript 扩展了 javaScript 的语法。 typeScript 更像后端 java、C# 这样的面向对象语言,可以让 js 开发大型企…

Oracle-创建PDB

Oracle-创建PDB 创建PDB的方式 从PDB$SEED新建PDB克隆已存在的PDB 本地PDB克隆到同一个CDB中将远程PDB克隆到CDB中将非CDB插入或克隆到CDB中通过插拔的方式创建PDB sql 命令语法 条件 CDB必须open并且read write模式连接CDB$ROOT 用户并且具有CREATEPLUGGABLEDATABASE系统权…

如何快速解决集成环信IM遇到的问题?

1、环信FAQ频道发布了 环信FAQ帮助中心提供了各客户端、RESTful API、环信控制台以及商务相关的集成环信常见问题及解决方法,帮您快速解决集成问题 2、当我有问题时,从哪里进FAQ? 干脆收藏这个网址:https://faq.easemob.com/ 环…

Android的学习系列之Android Studio Setup安装

Android的学习系列之Android Studio Setup安装 [TOC](Android的学习系列之Android Studio Setup安装) 前言Android平台搭建总结 前言 还是项目需要,暂时搭建安卓的运行平台。 Android平台搭建 安装包 双击安装包,进入安装。 下一步 根据自己需求&a…

Flink源码之JobMaster启动流程

Flink中Graph转换流程如下: Flink Job提交时各种类型Graph转换流程中,JobGraph是Client端形成StreamGraph后经过Operator Chain优化后形成的,然后提交给JobManager的Restserver,最终转发给JobManager的Dispatcher处理。 Completa…

24数据结构-图的基本概念与存储结构

目录 第六章 图6.1 图的基本概念知识回顾 6.2 图的储存结构(邻接矩阵法)1. 数组表示法(1) 有向图,无向图的邻接矩阵 2. 定义邻接矩阵的结构3. 定义图的结构4. 构造图G5. 特点 第六章 图 6.1 图的基本概念 图是一种非线性结构 图的特点&am…

手把手教你快速实现内网穿透

快速内网穿透教程 文章目录 快速内网穿透教程前言*cpolar内网穿透使用教程*1. 安装cpolar内网穿透工具1.1 Windows系统1.2 Linux系统1.2.1 安装1.2.2 向系统添加服务1.2.3 启动服务1.2.4 查看服务状态 2. 创建隧道映射内网端口3. 获取公网地址 前言 要想实现在公网访问到本地的…

海康威视iVMS综合安防系统任意文件上传(0Day)

漏洞描述 攻击者通过请求/svm/api/external/report接口任意上传文件,导致获取服务器webshell权限,同时可远程进行恶意代码执行。 免责声明 技术文章仅供参考,任何个人和组织使用网络应当遵守宪法法律,遵守公共秩序,尊重社会公德,不得利用网络从事危害国家安全、荣誉和…

为什么商业基础软件需要开源

Bytebase 本身是一家商业软件公司,而作为最核心资产的代码从 Day 0 却是开源的。同时我们还是 star-history.com 的运营者,大家在各种开源渠道会看到它生成的图: 一直以来,常会被别人问起的一个问题,就是为什么 Byteba…

【学习日记】【FreeRTOS】任务句柄、任务控制块TCB、任务栈、任务、就绪表详解

写在前面 本文是对FreeRTOS中任务句柄、任务控制块TCB、任务栈、任务、就绪表详解。 一、裸机和RTOS中函数存储位置详解 左图为裸机开发时 RAM 的使用情况,右图是使用了 FreeRTOS 后 RAM 的使用情况(图片来自野火)。 无论是裸机开发还是Fr…

【docker】设置 docker 国内镜像报错,解决方案

一、报错: [rootlocalhost ~]# systemctl restart docker Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.二、原因&#xf…

实现分布式事务:Java与MySQL的XA事务协调

目录 一、什么是XA事务 二、Java中的XA事务支持 三、MySQL的XA事务协调 四、注意事项和最佳实践 五、基于 java 语言的开发工具 六、小结 分布式事务是在跨多个数据库或服务之间保持一致性的重要机制。Java与MySQL的XA(eXtended Architecture)事务…

NPM包的安装、更新、卸载

目录 1、下载安装全局包 2、解决全局安装包时的EACCES权限错误 2.1 重新安装NPM 2.2 手动更改npm的默认目录 3、更新从注册表下载的包 3.1 更新本地包 3.2 更新全局安装的软件包 3.3 确定哪些全局包需要更新 3.4 更新单个全局包 3.5 更新所有全局安装的软件包 4、在项…

【ASP.NET MVC】使用动软(五)(13)

一、问题 前文完成的用户登录后的首页如下: 后续账单管理、人员管理等功能页面都有相同的头部,左边和下边,唯一不同的右边内容部分,所以要解决重复设计的问题。 二、解决方法——使用布局页 在Views上右键添加新建项&#xff…

多维时序 | MATLAB实现ZOA-CNN-BiGRU-Attention多变量时间序列预测

多维时序 | MATLAB实现ZOA-CNN-BiGRU-Attention多变量时间序列预测 目录 多维时序 | MATLAB实现ZOA-CNN-BiGRU-Attention多变量时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 1.Matlab基于ZOA-CNN-BiGRU-Attention斑马优化卷积双向门控循环单元网络…

【云原生】Kubernetes控制器中DaemonSet与Job的使用

目录 DaemonSet 1 什么是 DaemonSet 2 使用 DaemonSet Job 1 什么是 Job 2 使用 Job 3 自动清理完成的 Job 控制器无法解决问题 DaemonSet 1 什么是 DaemonSet DaemonSet | Kubernetes DaemonSet 确保全部(或者某些)节点上运行一个 Pod 的副本…

eeglab(自用)

目录 1.加载、显示数据 2.绘制脑电头皮图 3.绘制通道光谱图 4.预处理工具 5.ICA去除伪迹 5. 提取数据epoch 1.加载、显示数据 观察事件值(Event values):该数据集中包含2400个事件,每个事件指定了EEG.event结构的字段Type(类型)、position(位置)和…

检测新突破 | AlignDet:支持各类检测器自监督新框架(ICCV2023)

引言 论文链接:https://arxiv.org/abs/2307.11077 项目地址:https://github.com/liming-ai/AlignDet 这篇论文主要研究目标检测领域的自监督预训练方法。作者首先指出,当前主流的预训练-微调框架在预训练和微调阶段存在数据、模型和任务上的…

【技巧】如何设置Word文档部分内容“限制编辑”?

我们知道,Word文档可以设置“限制编辑”,也就是保护文档不被随意更改。 那如果只想保护文档中的部分内容,其他内容还是随意编辑更改,是否可以设置部分内容“限制编辑”?答案是可以的,下面小编来举例说明一…

uniapp 格式化时间刚刚,几分钟前,几小时前,几天前…

效果如图: 根目录下新建utils文件夹,文件夹下新增js文件,文件内容: export const filters {dateTimeSub(data) {if (data undefined) {return;}// 传进来的data必须是日期格式,不能是时间戳//将字符串转换成时间格式…