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

news2024/11/28 12:45:38

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.coloradmin.cn/o/843770.html

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

相关文章

LeetCode 热题 100 JavaScript--206. 反转链表

/*** Definition for singly-linked list.* function ListNode(val, next) {* this.val (valundefined ? 0 : val)* this.next (nextundefined ? null : next)* }*/ /*** param {ListNode} head* return {ListNode}*/1、逐个断键,将后一个节点放到前面 …

C语言笔试训练【第四天】

文章目录 1、设变量已正确定义&#xff0c;以下不能统计出一行中输入字符个数&#xff08;不包含回车符&#xff09;的程序段是&#xff08; &#xff09; 2、运行以下程序后&#xff0c;如果从键盘上输入 65 14<回车> &#xff0c;则输出结果为&#xff08; &#xff0…

centos7 yum源安装出错及更新问题

如下 首先&#xff0c;在搜索jdk时报错如下&#xff1a; 解决办法 1、进入 yum的repo目录 cd /etc/yum.repos.d/2、修改所有的CentOS文件内容 sed -i s/mirrorlist/#mirrorlist/g /etc/yum.repos.d/CentOS-*sed -i s|#baseurlhttp://mirror.centos.org|baseurlhttp://vau…

《南方都市报》:大众点评等互联网平台陷医美虚假“种草”质疑,或涉嫌违规广告

植发、整容&#xff0c;正在走向大众。近日&#xff0c;“妈妈带高考结束女儿整容提升自信”“长沙学生族暑假扎堆整容”等多个相关话题冲上热搜&#xff0c;学生整形热引发广泛关注。 爱美之心&#xff0c;人皆有之&#xff0c;当下早不是谈整容色变的时候&#xff0c;有人在…

【深度学习中的批量归一化BN和层归一化LN】BN层(Batch Normalization)和LN层(Layer Normalization)的区别

文章目录 1、概述2、BN层3、LN层4、Pytorch的实现5、BN层和LN层的对比 1、概述 归一化(Normalization) 方法&#xff1a;指的是把不同维度的特征&#xff08;例如序列特征或者图像的特征图等&#xff09;转换为相同或相似的尺度范围内的方法&#xff0c;比如把数据特征映射到[…

IO学习-有名管道

1&#xff0c;要求实现AB进程对话 A进程先发送一句话给B进程&#xff0c;B进程接收后打印 B进程再回复一句话给A进程&#xff0c;A进程接收后打印 重复1.2步骤&#xff0c;当收到quit后&#xff0c;要结束AB进程 运行结果&#xff1a;

【面试八股文】每日一题:谈谈你对集合的理解

每日一题-Java核心-谈谈你对集合的理解【面试八股文】 谈谈你对集合的理解 Java集合是Java编程语言中用于存储数据的容器。它提供了一系列的类和接口&#xff0c;用于操作和管理数据集合。Java集合框架主要包括以下几个重要的接口和类&#xff1a; List&#xff1a;List是一个有…

掌握 JVM 调优命令

点击下方关注我&#xff0c;然后右上角点击...“设为星标”&#xff0c;就能第一时间收到更新推送啦~~~ JVM 日常调优总结起来就是&#xff1a;首先通过 jps 命令查看当前进程&#xff0c;然后根据 pid 通过 jinfo 命令查看和修改 jvm 参数&#xff0c;通过 jstat 命令查看 cla…

火力全开!百度文心3.5三大维度、20项指标国内问鼎!

近日&#xff0c;清华大学新闻与传播学院沈阳团队发布《大语言模型综合性能评估报告》&#xff08;下文简称“报告”&#xff09;&#xff0c;报告显示百度文心一言在三大维度20项指标中综合评分国内第一&#xff0c;超越ChatGPT&#xff0c;其中中文语义理解排名第一&#xff…

8.7一日总结

后台管理项目(使用vue3) 1.创建项目 npm init vuelatest 2.进入项目,下载依赖 3.下载需要的项目依赖 下载重置样式表 npm install reset-css 在main.js中阴入 import reset-css 4.清理目录 将项目中不需要的内容删除 5.运行项目 npm run dev 6.将仓库推送…

Kubectl 详解

目录 陈述式资源管理方法:项目的生命周期:创建-->发布-->更新-->回滚-->删除声明式管理方法:陈述式资源管理方法: kubernetes 集群管理集群资源的唯一入口是通过相应的方法调用 apiserver 的接口kubectl 是官方的CLI命令行工具,用于与 apiserver 进行通信,将…

线程池优雅关闭

背景 线程池是日常我们写代码时经常打交道的知识点了&#xff0c;围绕线程池除了core核心线程数和最大max线程数的知识点外&#xff0c;我们一般会忽略然而却绕不开的问题时如何关闭线程池 如何关闭线程池 首先从优雅关闭线程池代码说起&#xff1a; public boolean graful…

在oracle SQL中创建返回表的函数

这是我的职责 create or replace FUNCTION split(i_str IN VARCHAR2,i_delim IN VARCHAR2 DEFAULT : ) RETURN TABLE AS BEGINRETURN SELECT trim(regexp_substr(i_str, [^||i_delim||], 1, LEVEL)) str FROM projetCONNECT BY instr(i_str, i_delim, 1, LEVEL - 1) …

Android安卓实战项目(10)---详细记录饮食与训练计划App【大Demo】可记录每日消耗和数据面板(源码在文末)可用于比赛项目或者作业参考中

Android安卓实战项目&#xff08;10&#xff09;—详细记录饮食与训练计划App【大Demo】可记录每日消耗和数据面板&#xff08;源码在文末&#x1f415;&#x1f415;&#x1f415;&#xff09;可用于比赛项目或者作业参考中 【bilibili演示】 https://www.bilibili.com/video…

【IDEA + Spark 3.4.1 + sbt 1.9.3 + Spark MLlib 构建鸢尾花决策树分类预测模型】

决策树进行鸢尾花分类的案例 背景说明&#xff1a; 通过IDEA Spark 3.4.1 sbt 1.9.3 Spark MLlib 构建鸢尾花决策树分类预测模型&#xff0c;这是一个分类模型案例&#xff0c;通过该案例&#xff0c;可以快速了解Spark MLlib分类预测模型的使用方法。 依赖 ThisBuild /…

算法通关村第四关——如何基于数组实现栈

1.栈的基础知识 1.1 栈的特征 栈&#xff08;Stack&#xff09;&#xff1a;具有一定操作约束的线性表&#xff0c;只在一端&#xff08;栈顶&#xff0c;Top&#xff09;做插入&#xff08;Push&#xff09;、删除(Pop)&#xff0c;不可操作的一端称为栈底&#xff08;Botto…

C高级--day4(wc指令、case...in、while循环、for循环、select..in、break、continue、shell中的函数)

#!/bin/bash function fun() {uidid -u $namegidid -g $nameecho $uid $gid } read name retfun $name echo $ret

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

一、报错&#xff1a; [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…

UE5 半透明覆层材质

文章目录 前言介绍示例1示例2示例3 前言 本文采用虚幻5.2.1版本演示&#xff0c;介绍半透明覆层材质&#xff08;覆层材质&#xff09;。 介绍 半透明覆层材质是 UE5.1 版本 更新的功能&#xff0c;使用半透明覆层材质&#xff0c;可以轻松的给物体表面附着一层材质。 在UE5…

【Maven】常用命令、插件管理、私服nexus

【Maven】常用命令、插件管理、私服nexus 常用命令 插件管理 私服nexus Nexus3 配置私服 项目pom中的配置 发布时区分正式版、快照版 常用命令 Maven提供了一系列常用命令&#xff0c;用于构建、测试和管理项目。以下是一些常用的Maven命令示例&#xff1a; mvn clean:…