VS Code User和System版区别【推荐使用System版本】and VSCode+Keil协同开发之Keil Assistant
VS Code User和System版区别
- Chapter1 VS Code User和System版区别
- 1. 对于安装而言
- 2. 结束语
- Chapter2 VS Code 安装、配置教程及插件推荐
- 插件:
- Chapter3 VSCode+Keil协同开发之Keil Assistant
- 1. 效果展示
- 2. Keil Assistant简介
- 3. Keil Assistant功能特性
- 4. 部署步骤
- 4.1. 部署准备
- 4.2. 安装Keil Assistant插件
- 4.3. 配置Keil Assistant插件
- 5. Keil Assistant使用
- 6. 总结
- Chapter4 [VScode] 嵌入式软件开发必备插件
- Chapter5 VScode编辑器——配置可编写MDK keil工程
- Chapter6 手把手教你VSCode搭建STM32开发环境
- Chapter7 VScode+git+keil开发STM32不要太爽
- Chapter8 【STM32F407】Note_01 STM32 编程环境搭建 -- Keil与VS code组合

Chapter1 VS Code User和System版区别
原文链接:https://blog.csdn.net/qq_34360180/article/details/84147659
Visual Studio Code官网却提供了User和System两个版本。
1. 对于安装而言
User版本无法在系统分区(盘) 创建默认文件夹Microsoft VS Code,可见权限不足。
对于System版无此问题,可next step到底,和其他不分的软件一样了
语言问题(win10 LTSC 中文语言下)
这个不确定是仅我出现还是普遍问题
对于User版安装程序以及VScode程序默认均为英文,貌似不能读取系统语言环境,System版直接是中文安装程序,以及中文显示面板。

2. 结束语
目前不知道这两种版本有何具体区别
StakOverflow 问答中有人说文件也有区别,暂不得而知
关于微软的良苦用心可能需要慢慢体会。把软件也分用户和系统管理员,对于普通用户而言,为了避免不必要的麻烦,建议使用System版,仅供参考。
Chapter2 VS Code 安装、配置教程及插件推荐
原文链接:https://blog.csdn.net/qq_58096041/article/details/141640890
插件:
- 浏览器打开文件 - open in browser
使用Alt + B快捷键在默认浏览器中打开当前html文件
使用Shift + Alt + B选择浏览器
Chapter3 VSCode+Keil协同开发之Keil Assistant
原文链接:https://blog.csdn.net/zxyq_2024/article/details/141725725
大家在单片机开发时需要要用到IDE,其中Keil就是很多人的选择,但Keil在编辑器上界面还是有些简单,对于习惯了VSCode的同学来说有点小别扭,下面就给大家介绍一款VSCode插件————Keil Assistant,可以帮助大家解锁更舒适、更效率的开发姿势。
本文将以图文方式介绍VSCode+Keil协同开发单片机程序的方法,解锁更舒适、更效率的开发姿势。
1. 效果展示

2. Keil Assistant简介
-
VSCode 上的 Keil 辅助工具,与 c/c++ 插件配合使用。
-
能够为 Keil 项目提供 语法高亮、代码片段 的功能,并支持对 Keil 项目进行 编译、下载。
-
仅支持 Keil uVison 5 及以上版本。
-
仅支持 Windows 平台。
下面是官方对这个插件的描述:
VScode上的Keil辅助工具,与c/c++ 插件配合使用。能够为Keil项目提供语法高亮、代码片段的功能,并支持对keil项目进行 编译、下载。仅支持 Keil uVison 5 及以上版本。仅支持Windows平台。
功能特性🎉
-
1、加载Keil C51/ARM 项目,并以Keil项目资源管理器的展示方式显示项目视图。
-
2、自动监视keil项目文件的变化,及时更新项目视图。
-
3、通过调用Keil命令行接口实现 编译,重新编译,烧录keil项目。
-
4、自动生成c_cpp_properties.json文件,使C/C++插件的语法分析能正常进行。
3. Keil Assistant功能特性
-
加载 Keil C51/C251/ARM 项目,并以 Keil 项目资源管理器的展示方式显示项目视图。
-
自动监视 keil 项目文件的变化,及时更新项目视图。
-
通过调用 Keil 命令行接口实现 编译,重新编译,烧录 keil 项目。
-
自动生成 c_cpp_properties.json 文件,使 C/C++ 插件的语法分析能正常进行。
4. 部署步骤
-
下文插件安装过程中可能有需要重启VSCode的情况,按弹窗提示操作即可。
-
本文默认读者已经安装好Keil,本文将不再介绍Keil的安装。
4.1. 部署准备
(1)下载、安装VSCode
-
进入VSCode官网
-
点击Download(建议使用System版本)。
4.2. 安装Keil Assistant插件
- 参照上述步骤,在插件搜索栏搜索Keil Assistant并安装。

4.3. 配置Keil Assistant插件
- 点击VSCode左侧插件选项->点击Keil Assistant插件的设置->点击扩展设置。


- 在弹出的设置界面的两个地址栏根据自身Keil安装情况填入Keil C51和MDK地址(如下图)。

5. Keil Assistant使用
(1)需要先在Keil上创建好项目,添加好文件,头文件路径等。
(2)选中VSCode左侧KEIL UVISION PROJECT选项,点击右侧图标,选择想要操作的keil项目文件(.uvproj),插件会自动加载此keil项目。


注:可能期间会弹出下图所示提示,点击OK和信任即可。


(3)下图所示位置图标分别为编译,下载,重新编译。

(4)若是编译过的文件,点击上图所示左侧不同位置的箭头可以列出不同文件夹下文件及.c文件所引用的.h文件。
(5)在Keil修改并保存后的文件,此插件会自动更新。
(6)在VSCode利用此插件修改并保存过的文件在回到Keil时会弹出提示框,根据情况选择即可。

(7)点击项目旁边的箭头可以在多个Keil Target 之间切换。

6. 总结
以上就是利用VSCode插件Keil Assistant结合Keil协同开发的教程了,使用期间若有什么问题可以联系我们交流解决,或使用Keil Assistant官方论坛。
希望本文可以帮你用更舒服的姿势进行嵌入式开发!
Chapter4 [VScode] 嵌入式软件开发必备插件
原文链接:https://blog.csdn.net/qq_29246181/article/details/118066162
Chapter5 VScode编辑器——配置可编写MDK keil工程
原文链接:https://blog.csdn.net/qq_40296855/article/details/114819808
Chapter6 手把手教你VSCode搭建STM32开发环境
原文链接:https://blog.csdn.net/best_xiaolong/article/details/126653729
Chapter7 VScode+git+keil开发STM32不要太爽
原文链接:https://blog.csdn.net/jwidhjj/article/details/128276841
Chapter8 【STM32F407】Note_01 STM32 编程环境搭建 – Keil与VS code组合
原文链接:https://blog.csdn.net/Seasons_y/article/details/129464431
相关文章:
VS Code User和System版区别【推荐使用System版本】and VSCode+Keil协同开发之Keil Assistant
VS Code User和System版区别 Chapter1 VS Code User和System版区别1. 对于安装而言2. 结束语 Chapter2 VS Code 安装、配置教程及插件推荐插件: Chapter3 VSCodeKeil协同开发之Keil Assistant1. 效果展示2. Keil Assistant简介3. Keil Assistant功能特性4. 部署步骤…...
MongoDB:listDatabases failed : not master and slaveOk=false
个人博客地址:MongoDB:listDatabases failed : not master and slaveOkfalse | 一张假钞的真实世界 异常描述 如果在MongoDB的SECONDARY上查询数据时会报如下错误信息: > show databases; 2018-09-20T17:40:55.3770800 E QUERY [thread…...
Python的那些事第二十二篇:基于 Python 的 Django 框架在 Web 开发中的应用研究
基于 Python 的 Django 框架在 Web 开发中的应用研究 摘要 Django 是一个基于 Python 的高级 Web 框架,以其开发效率高、安全性和可扩展性强等特点被广泛应用于现代 Web 开发。本文首先介绍了 Django 的基本架构和核心特性,然后通过一个实际的 Web 开发项目案例,展示了 Dj…...
【ISO 14229-1:2023 UDS诊断(会话控制0x10服务)测试用例CAPL代码全解析④】
ISO 14229-1:2023 UDS诊断【会话控制0x10服务】_TestCase04 作者:车端域控测试工程师 更新日期:2025年02月15日 关键词:UDS诊断、0x10服务、诊断会话控制、ECU测试、ISO 14229-1:2023 TC10-004测试用例 用例ID测试场景验证要点参考条款预期…...
图论入门算法:拓扑排序(C++)
上文中我们了解了图的遍历(DFS/BFS), 本节我们来学习拓扑排序. 在图论中, 拓扑排序(Topological Sorting)是对一个有向无环图(Directed Acyclic Graph, DAG)的所有顶点进行排序的一种算法, 使得如果存在一条从顶点 u 到顶点 v 的有向边 (u, v) , 那么在排序后的序列中, u 一定…...
【CXX】2 CXX blobstore客户端说明
本示例演示了一个调用blobstore服务的C客户端的Rust应用程序。事实上,我们会看到两个方向的调用:Rust到C以及C到Rust。对于您自己的用例,您可能只需要其中一个方向。 示例中涉及的所有代码都显示在此页面上,但它也以可运行的形式提…...
HTTP相关面试题
HTTP/1.1、HTTP/2、HTTP/3 演变 HTTP/1.1 相比 HTTP/1.0 提高了什么性能? HTTP/1.1 相⽐ HTTP/1.0 性能上的改进: 使⽤长连接的⽅式改善了 HTTP/1.0 短连接造成的性能开销。⽀持管道(pipeline)网络传输,只要第⼀个请…...
关于XML映射器的基本问题
前言 XML 映射器是 MyBatis 中用于定义 SQL 语句及其与 Java 对象映射关系的 XML 文件。它通过 XML 配置将数据库操作与 Java 代码分离,使 SQL 语句更易维护和管理。 主要作用 定义 SQL 语句:在 XML 中编写 SQL 查询、插入、更新和删除操作。 映射结果…...
【MyBatis】预编译SQL与即时SQL
目录 1. 以基本类型参数为例测试#{ }与${ }传递参数的区别 1.1 参数为Integer类型 1.2 参数为String类型 2. 使用#{ }传参存在的问题 2.1 参数为排序方式 2.2 模糊查询 3. 使用${ }传参存在的问题 3.1 SQL注入 3.2 对比#{ } 与 ${ }在SQL注入方面存在的问题 3.3 预编译…...
Python--正则表达式
1. 日志打印与终端颜色控制 1.1 使用 loguru 打印日志 from loguru import loggerlogger.debug("调试信息") logger.info("普通信息") logger.warning("警告信息") logger.error("错误信息") logger.success("成功信息"…...
【java面试】线程篇
1.什么是线程? 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。 2.线程和进程有什么区别? 线程是进程的子集,一个进程可以有很多线程,每条线程并行执行不同的任…...
分布式光纤传感:为生活编织“感知密网”
分布式光纤测温技术虽以工业场景为核心,但其衍生的安全效益已逐步渗透至日常生活。 分布式光纤测温技术(DTS)作为一种先进的线型温度监测手段,近年来在多个领域展现了其独特的优势。虽然其核心应用场景主要集中在工业、能源和基础…...
cmake Qt Mingw windows构建
今天教大家怎么在windows构建qt应用使用cmd命令行,而不是一键通过QtCreator一键构建。首先我们用qtcreator创建一个模板程序(PS:记得在安装qt时要悬着mingw套件,如果安装太慢可以换源) 输入以下的命令: mkdir build …...
无人机信号调制技术原理
一、调制技术的必要性 频谱搬移:将低频的基带信号搬移到高频的载波上,便于天线辐射和传播。 信道复用: 利用不同的载波频率或调制方式,实现多路信号同时传输,提高信道利用率。 抗干扰: 通过选择合适的调…...
书评与笔记:《如何有效报告Bug》
文章目录 书评笔记核心原则1. 首要目标:让程序员亲眼看到问题2. 次要目标:详细描述问题3. 保持冷静,避免误操作4. 提供额外信息5. 清晰、准确地表达 实用建议不要自作聪明地诊断问题类比:看医生时的症状描述程序员的心理 总结 原文…...
3.【线性代数】——矩阵乘法和逆矩阵
三 矩阵乘法和逆矩阵 1. 矩阵乘法1.1 常规方法1.2 列向量组合1.3 行向量组合1.4 单行和单列的乘积和1.5 块乘法 2. 逆矩阵2.1 逆矩阵的定义2.2 奇异矩阵2.3 Gauss-Jordan 求逆矩阵2.3.1 求逆矩阵 ⟺ \Longleftrightarrow ⟺解方程组2.3.2 Gauss-Jordan求逆矩阵 1. 矩阵乘法 1.…...
[JVM篇]虚拟机性能监控、故障处理工具
虚拟机性能监控、故障处理工具 基础故障处理工具 jps(JVM Peocess Status Tool - 虚拟机进程状况工具) jstat(JVM Statistics Monitoring Too - 虚拟机统计信息监视工具) jinfo( Configuration info for Java - Java配置信息工具) jmap(Memory Map for…...
UniApp 中 margin 和 padding 属性的使用详解
margin 属性的作用与使用 margin 属性用于设置元素的外边距,也就是元素与其他元素之间的距离。它可以分别设置元素四个方向(上、右、下、左)的外边距,也支持使用简写形式来一次性设置多个方向的外边距。 <template><view…...
`fi` 是 Bash 脚本中用来结束 `if` 条件语句块的关键字
fi 是 Bash 脚本中 if 语句的结束标志,它用于结束一个 if 块。与其他编程语言(如 C、Java)中的 } 不同,Bash 使用 fi 来标识条件语句的结束。 语法示例: if [ condition ]; then# 如果条件为真时执行的代码echo &quo…...
cap2:1000分类的ResNet的TensorRT部署指南(python版)
《TensorRT全流程部署指南》专栏文章目录: cap1:TensorRT介绍及CUDA环境安装cap2:1000分类的ResNet的TensorRT部署指南(python版)cap3:自定义数据集训练ResNet的TensorRT部署指南(python版&…...
Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...
Java如何权衡是使用无序的数组还是有序的数组
在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...
家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...
【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)
🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...
优选算法第十二讲:队列 + 宽搜 优先级队列
优选算法第十二讲:队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...
Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?
在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...
让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比
在机器学习的回归分析中,损失函数的选择对模型性能具有决定性影响。均方误差(MSE)作为经典的损失函数,在处理干净数据时表现优异,但在面对包含异常值的噪声数据时,其对大误差的二次惩罚机制往往导致模型参数…...
【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看
文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...
libfmt: 现代C++的格式化工具库介绍与酷炫功能
libfmt: 现代C的格式化工具库介绍与酷炫功能 libfmt 是一个开源的C格式化库,提供了高效、安全的文本格式化功能,是C20中引入的std::format的基础实现。它比传统的printf和iostream更安全、更灵活、性能更好。 基本介绍 主要特点 类型安全:…...
自定义线程池1.2
自定义线程池 1.2 1. 简介 上次我们实现了 1.1 版本,将线程池中的线程数量交给使用者决定,并且将线程的创建延迟到任务提交的时候,在本文中我们将对这个版本进行如下的优化: 在新建线程时交给线程一个任务。让线程在某种情况下…...
