VSCode Keil Assintant 联合开发STM32

news2024/11/30 8:40:49

文章目录

  • VSCode+Keil Assistant+UV5
    • 🥇软件下载
    • 🥇配置环境
    • 🥇插件安装
      • 🥈C/C++ Extension Pack
        • 🥉C/C++ Extension Pack介绍
        • 🥉插件安装
      • 🥈Keil Assistant
        • 🥉Keil Assistant介绍
        • 🥉插件安装与使用
        • 🥉问题
    • 🥇使用Keil Assistant打开工程的正确方式

VSCode+Keil Assistant+UV5

Date : 2023/12.5

Editor : RUAN YANG

🥇软件下载

  1. VS Code

  2. Keil 5

  3. STM32CubeMX

🥇配置环境

  • 配置MinGW

    用于识别C/C++语言的语法,为VS Code提供智能提示和代码洞察的能力

  • VS Code下载插件

    1. C/C++ Extension Pack
    2. Keil Assistance

🥇插件安装

🥈C/C++ Extension Pack

🥉C/C++ Extension Pack介绍

C/C++ Extension Pack 是一个 Visual Studio Code 的扩展包,专门为 C 和 C++ 开发者提供了一系列有用的工具和功能,以提升在 Visual Studio Code 中进行 C/C++ 开发的体验。

C/C++ Extension Pack 包含了以下几个常用的扩展:

  1. C/C++: 这是 Microsoft 官方提供的 C/C++ 扩展,提供了基本的语法高亮、代码补全、代码导航、调试等功能,支持多种编译器和调试器。

  2. C++ Intellisense: 这个扩展提供了更强大的 C++ 代码智能感知功能,可以实时分析代码,提供更准确的代码补全、参数提示、符号引用等功能。

  3. Code Runner: 这个扩展可以让你在 Visual Studio Code 中直接运行当前文件的代码,支持多种编程语言,包括 C 和 C++。

  4. CMake: 这个扩展为 CMake 项目提供了支持,可以在 Visual Studio Code 中编辑和构建 CMakeLists.txt 文件,并提供代码补全、语法检查等功能。

  5. C/C++ Clang Command Adapter: 这个扩展使用 Clang 提供了更快速和准确的代码补全、语法检查和重构功能。

  6. CMake Tools: 这个扩展提供了更强大的 CMake 支持,可以自动检测和配置 CMake 项目,提供代码补全、语法检查、构建和调试等功能。

  7. C++ TestMate: 这个扩展可以帮助你在 Visual Studio Code 中进行 C++ 单元测试,支持多种测试框架,如 Google Test、Catch2 等。

这些扩展组成了 C/C++ Extension Pack,可以一键安装,帮助开发者更好地进行 C 和 C++ 开发。你可以在 Visual Studio Code 的扩展商店中搜索 “C/C++ Extension Pack” 并安装它,或者通过 Visual Studio Code 的扩展管理界面直接安装这些单独的扩展。

🥉插件安装

在VScode的扩展界面上面搜索C/C++,然后点击install。

在这里插入图片描述

🥈Keil Assistant

🥉Keil Assistant介绍

Keil Assistant 是一个辅助工具,旨在帮助开发人员在 Keil MDK(Microcontroller Development Kit)集成开发环境中更高效地进行嵌入式软件开发。Keil MDK 是一款针对 ARM Cortex-M 微控制器的开发工具,提供了编译、调试、仿真和软件包管理等功能。

Keil Assistant 提供了一系列辅助功能,可以简化和加速开发过程。以下是一些 Keil Assistant 的常见功能:

  1. 项目创建和配置: Keil Assistant 可以帮助你快速创建新项目,并提供项目配置向导,帮助你设置编译器选项、链接器脚本、调试器配置等。

  2. 代码生成: Keil Assistant 可以自动生成一些常见的代码模板,如启动代码、中断向量表、系统初始化等,帮助你快速开始项目开发。

  3. 设备支持: Keil Assistant 提供了设备数据库,可以帮助你选择和配置目标芯片,包括芯片型号、Flash 和 RAM 大小、外设等。它还可以自动下载和安装设备支持包,以确保你使用的芯片和外设驱动是最新的。

  4. 调试和仿真: Keil Assistant 提供了调试和仿真相关的功能,包括调试器配置、目标设备连接设置、调试会话管理等。它可以帮助你更方便地配置和管理调试环境,并提供一些调试技巧和建议。

  5. 软件包管理: Keil Assistant 可以帮助你管理和使用 Keil MDK 的软件包。它提供了软件包搜索、安装、更新和移除等功能,使你可以方便地获取和使用第三方软件库和组件。

请注意,Keil Assistant 是一个辅助工具,并不是 Keil MDK 的一部分。它可以作为一个独立的插件或工具集成到 Keil MDK 中,提供额外的功能和便利性。具体的功能和使用方式可能会根据不同的版本和配置而有所差异,建议参考相关文档或官方资源以获取更详细的信息。

🥉插件安装与使用

1.在VScode的扩展界面上面搜索Keil Assistant,然后点击install。

在这里插入图片描述

2.进入VScode的扩展界面,选中Keil Assistant右下角的齿轮,点击扩展设置,进入Keil Assistant设置界面

在这里插入图片描述

3.在Keil Assistant设置界面,根据你的单片机类型(C51/ARM),在相应的输入栏里粘贴keil的路径即可。

在这里插入图片描述

4.然后就可以在keil Uvision project栏去添加你的keil工程和编译(编译自动保存文件),下载等,添加工程时选中你的工程文件(.uvprojx)即可

在这里插入图片描述

🥉问题

问题:头文件无法打开,并出现红色波浪线?

在这里插入图片描述

原因:vscode 找不到编译器。
解决办法:

  1. 打开工程文件(.uvprojx)所在的文件夹

在这里插入图片描述

  1. 问题解决✔️
    在这里插入图片描述

🥇使用Keil Assistant打开工程的正确方式

  1. 打开工程文件(.uvprojx)所在的文件夹。

在这里插入图片描述

  1. 此时keil Uvision project就自动将工程添加进来了,就不需要手动添加。

在这里插入图片描述

注意:导入第三方库后需要在Keil里设置好编译路径。

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

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

相关文章

onnxruntime和tensorrt多batch推理

以lenet网络为例。 onnxruntime多batch推理 当batch size为2时,导出如下结构的onnx文件: python推理: import cv2 import numpy as np import onnxruntimeimg0 cv2.imread("2.png", 0) img1 cv2.imread("10.png", …

App备案、ios备案Bundle ID查询、公钥信息、SHA-1值

App备案、ios备案Bundle ID查询、公钥信息、SHA-1值 Bundle ID这个就不说了,都知道是啥,主要说公钥信息和SHA-1值的获取 打开钥匙串访问,找到当前需要备案App的dis证书,如下: #####右键点击显示简介 #####可以看…

用友U8 Cloud 多处反序列化RCE漏洞复现

0x01 产品简介 用友U8 Cloud是用友推出的新一代云ERP,主要聚焦成长型、创新型企业,提供企业级云ERP整体解决方案。 0x02 漏洞概述 用友U8 Cloud存在多处(TableInputOperServlet、LoginServlet 、FileTransportServlet、CacheInvokeServlet、ActionHandlerServlet、Servle…

LeetCode力扣每日一题(Java):28、找出字符串中第一个匹配项的下标

别问我为什么今天做了两题,问就是我干概率论干废了,需要换换脑子想想不同类型的问题,所以来刷刷算法 一、题目 二、解题思路 1、我的思路 其实这题思路还挺简单的,我直接把代码放这,大家应该稍微看看就能懂 char[]…

如何使用 Google 的 Gemini

Google Gemini介绍 Google Gemini是谷歌发布的人工智能大模型,能够在从数据中心到移动设备等不同平台上运行。 Gemini包括一套三种不同规模的模型: Gemini Ultra是最大、功能最强大的类别,被定位为GPT-4的竞争对手;Gemini Pro是…

软件设计之组合模式

组合模式:将对象组合成树形结构。 案例:公司管理。一个公司可以分总公司和分公司,无论是总公司还是分公司都有自己的部门,如人力资源管理部门、财务部门。分公司可以建立自己在不同地域的办事处。请使用组合模式打印出某个公司的…

十年前端之离别的旋律

在一家名叫“梦想家”的小公司里,有一个普通的程序员,他的名字叫做小帅。每天默默地坐在角落里,默默地写着代码,默默地为公司付出。他的眼睛里总是充满了对工作的热爱和对生活的热情,但他的内心却隐藏着一个秘密&#…

[架构之路-261]:目标系统 - 设计方法 - 软件工程 - 软件设计 - 架构设计 - 网络数据交换格式

一、网络数据交换格式 1.1 什么是网络数据交换格式 网络数据交换格式指的是在计算机网络中传输和存储数据时所采用的特定格式。 它定义了数据的组织方式、结构和编码规则,以便不同系统和应用程序之间能够准确地解析和处理数据。 网络数据交换格式的主要目的是&a…

猿人学第一题 js混淆 双重加密(详解)

当我们点击分页的时候可以确定这个请求过程是ajax请求,所以直接使用抓包工具找到储存信息的请求。 找到这个请求之后,我们明显发现?后面的参数m是一个加密过的 由于这个请求属于ajax请求,现在我们可以直接使用xhr断点调试找到位置 打上断电…

实用篇 | 一文快速构建人工智能前端展示streamlit应用

----------------------- 🎈API 相关直达 🎈-------------------------- 🚀Gradio: 实用篇 | 关于Gradio快速构建人工智能模型实现界面,你想知道的都在这里-CSDN博客 🚀Streamlit :实用篇 | 一文快速构建人工智能前端展…

JavaEE 09 锁策略

1.锁策略 1.1 乐观锁与悲观锁 其实前三个锁是同一种锁,只是站在不同的角度上去进行描述,此处的乐观与悲观其实是指在预测的角度上看会发生锁竞争的概率大小,概率大的则是悲观锁,概率小的则是乐观锁 乐观锁在加锁的时候就会做较少的事情,加锁的速度较快,但是消耗的cpu资源等也会…

代码随想录二刷 |二叉树 |94.二叉树的中序遍历

代码随想录二刷 |二叉树 |二叉树的中序遍历 题目描述解题思路代码实现迭代法递归法 题目描述 94.二叉树的中序遍历 给定一个二叉树的根节点 root ,返回 它的 中序 遍历 。 示例 1: 输入:root [1,null,2,3] 输出&a…

系统架构设计师教程(二)计算机系统基础知识

系统架构设计师 2.1 计算机系统概述2.2 计算机硬件2.2.1 计算机硬件组成2.2.2 处理器2.2.3 存储器2.2.4 总线2.2.5 接口2.2.6 外部设备 2.3 计算机软件2.3.1 计算机软件概述2.3.2 操作系统2.3.3 数据库关系数据库关系数据库设计的特点及方法关系数据库设计的基本步骤 分布式数据…

[Linux] nginx防盗链与优化

一、Nginx的页面优化 1.1 Nginx的网页压缩 在Nginx的ngx_http_gzip_module压缩模块提供对文件内容压缩的功能。进行相关的配置修改,就能实现Nginx页面的压缩,达到节约带宽,提升用户访问速度 vim /usr/local/nginx/conf/nginx.conf http { .…

【trino权威指南】使用trino详解:trino client安装、查询sql、DBeaver连接trino、java通过JDBC连接trino

文章目录 一. Trino CLI1. 安装client2. 使用client执行sql 二. JDBC driver 连接Trino1. 通过DBeaver用户界面连接2. JDBC Driver in java2.1. 环境配置2.2. 注册和配置driver2.3. 连接参数2.4. 查询例子 一. Trino CLI 1. 安装client Trino CLI提供了一个基于终端的交互式s…

Linux权限命令详解

Linux权限命令详解 文章目录 Linux权限命令详解一、什么是权限?二、权限的本质三、Linux中的用户四、linux中文件的权限4.1 文件访问者的分类(人)4.2 文件类型和访问权限(事物属性) 五、快速掌握修改权限的做法【第一种…

【刷题篇】动态规划(六)

文章目录 1、最大子数组和2、环形子数组的最大和3、乘积最大子数组4、乘积为正数的最长子数组长度5、 等差数列划分6、最长湍流子数组 1、最大子数组和 给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素)&…

Cache替换算法

目录 一. 随机算法(RAND)二. 先进先出算法(FIFO)三. 近期最少使用算法(LRU)四. 最不经常使用算法(LFU) 要解决的问题: Cache很小,主存很大。如果cache满了怎么办? \quad 也要关注各种算法的英文缩写 \quad 一. 随机算法(RAND) \quad 随机算法―一实现简…

Qt优秀开源项目之十九:跨平台记事本Notes

官网:https://www.get-notes.com github:https://github.com/nuttyartist/notes 一.特性 1.完全基于Qt和C 2.完全开源和跨平台(Linux、macOS、Windows) 3.运行速度快,界面美如画 4.支持Markdown 5.支持使用嵌套文件夹…

C# 任务并行类库Parallel调用示例

写在前面 Task Parallel Library 是微软.NET框架基础类库(BCL)中的一个,主要目的是为了简化并行编程,可以实现在不同的处理器上并行处理不同任务,以提升运行效率。Parallel常用的方法有For/ForEach/Invoke三个静态方法…