【VSCode+Keil5+STM32CubeMX】开发环境配置

news2024/12/25 9:23:20

一、软件下载
二、软件安装
三、配置环境
四、验证开发环境
五、Keil与VS Code的同步


从0到1搭建VS Code + Keil5 + STM32CubeMX开发环境

  • 优点

    1. 支持标准库+HAL库+LL库
    2. 代码编辑更“现代化”:代码提示、函数跳转、更高自由度的定制主题等优点
    3. 多端同步,VS Code和Keil 5编写的代码可以实现同步
  • 缺点

    1. 不能实现VS Code一条龙开发,比如配置工程的编译选项和烧录器指定都需要在Keil完成
    2. 替代方法:EIDE(Emdedded IDE)、PIO(PlatformIO IDE),新人不友好

(可选项)卸载/删除原有的软件,清理残余

  • 这一步需要酌情考虑,若确实想换开发流程,则继续接下来的操作

  • 使用Geek Uninstaller进行卸载,清理注册表残余
    在这里插入图片描述

  • 之后找到软件的安装目录,删除

    对于STM32CubeMX还要删除:WIN+E ->C盘 -> user ->与.stm32相关的文件进行删除

  • 对于VS Code需要再删除两个位置的残余

    WIN+R -> 输入“%appdata%”按回车,找到“Code”文件夹,删除

    WIN+E ->C盘 -> user ->与.vscode相关的文件进行删除


一、软件下载

1. VS Code

VS Code 官网下载

在这里插入图片描述

2. Keil 5

Keil 官网下载

在这里插入图片描述
在这里插入图片描述

3. STM32CubeMX

STM32CubeMX 官网下载

在这里插入图片描述

二、软件安装

为了方便管理,先在任意盘符下新建一个文件夹(ProgramFile),用于管理此次安装的所有文件

文件名尽量英文,不要夹杂符号,例如:!@#$%^&*()_-+=~`等符号,以上字符/符号最好不要出现在文件路径
在这里插入图片描述

1. VS Code

选择好安装路径后一直下一步,此时勾选上所有的勾

在这里插入图片描述
在这里插入图片描述

2. Keil 5

keil 开发软件MDK的安装
在这里插入图片描述
在这里插入图片描述

  1. 安装好之后,以管理员权限打开

  2. 打开License生成工具,复制CID码,生成License Key

  3. 安装固件库/支持包

  4. 添加AC5版本的编译器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Keil MDK上基础配置
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
KEIL MDK5使用技巧
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

KEIL 固件支持包 官网下载

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. STM32CubeMX

【正点原子STM32】STM32CubeMX入门(搭建Java运行环境、STM32CubeMX安装、新建STM32CubeMX工程步骤、STM32CubeMX用户使用手册)

  1. 安装
  2. 打开软件,下载F1和F4系列的支持包
  3. 关闭自动更新和检查
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

三、配置环境

  • 配置MinGW
    开发环境 windows gcc 编译

    用于识别C/C++语言的语法,为VS Code提供智能提示和代码洞察的能力
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • VS Code下载插件

    1. C/C++ Extension Pack
    2. Keil Assistance
      在这里插入图片描述
      在这里插入图片描述
  • VS Code配置插件

    配置Keil Assistant与Keil编译器的链接
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • VScode SSH远程连接

    配置VScode SSH连接虚拟机
    【VScode】安装配置、插件及远程SSH连接
    在这里插入图片描述

四、验证开发环境

  • 标准库

    导入现成的工程到VS Code,编写代码、编译、下载

  • HAL库

    导入STM32CubeMX生成的工程,编写代码、编译、下载
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • LL库

    导入STM32CubeMX生成的工程,编写代码、编译、下载

五、Keil与VS Code的同步

  • 代码同步

    两个软件都可以进行代码编辑,完成后保存即可

  • 编译路径同步

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

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

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

相关文章

【Linux】在生产环境中,Linux系统排查常用命令

问题排查 文章目录 问题排查top命令CPU:vmstatprocscpu内存:free硬盘:df硬盘IO:iostat网络IO:ifstat 生产环境服务器变慢,诊断思路和性能评估 top命令 查看整机系统新能 使用top命令的话,重点…

大数据分析与内存计算——Spark安装以及Hadoop操作——注意事项

一、Spark安装 1.相关链接 https://dblab.xmu.edu.cn/blog/4322/ 2.安装Spark(Local模式) 按照文章中的步骤安装即可 遇到问题:xshell以及xftp不能使用 解决办法: 在linux使用镜像网站进行下载:wget https://mi…

视频汇聚/安防监控/视频存储EasyCVR平台EasyPlayer播放器更新:新增【性能面板】

视频汇聚/安防监控/视频存储平台EasyCVR基于云边端架构,可以在复杂的网络环境中快速、灵活部署,平台视频能力丰富,可以提供实时远程视频监控、视频录像、录像回放与存储、告警、语音对讲、云台控制、平台级联、磁盘阵列存储、视频集中存储、云…

ClickHouse集群搭建教程

文章目录 前言一、相关介绍1. 端口介绍 二、部署规划1. 准备centos2. 配置集群免密登录3. 部署规划 三、ckman依赖部署1. prometheus搭建1.1 下载并解压1.2 配置启停服务1.3 promethues配置(可选,不影响ckman核心功能)1.4 prometheus启停命令1.4.1 启动prometheus1.…

安全架构设计理论与实践相关知识总结

一、安全架构概述 常见信息威胁介绍: 1. 信息泄露:信息被泄露或透露给某个非授权实体 2. 破坏信息完整性:数据被非授权地进行增删改查货破坏而受到损失 3. 拒绝服务:对信息会其他资源的合法访问被无条件的组织 4. 非法使用&#x…

vue 加 websocket 聊天

<template><div style="height: 100%; width: 100%; background-color: #fff"><div class="wrap"><!-- 头部 --><div class="titleBox"><imgsrc="@/assets/image/avatar.png"style="argin: 10p…

《数据结构学习笔记---第九篇》---循环队列的实现

文章目录 1.循环队列的定义 2.循环队列的判空判满 3.创建队列并初始化 4.入队和出队 5. 返回队尾队首元素 6.释放循环队列 1.循环队列的定义 定义&#xff1a;存储队列元素的表从逻辑上被视为一个环。 我们此次实现的循环队列&#xff0c;采用顺序表 typedef struct {int…

Scikit-Learn K均值聚类

Scikit-Learn K均值聚类 1、K均值聚类1.1、K均值聚类及原理1.2、K均值聚类的优缺点 2、Scikit-Learn K均值聚类2.1、Scikit-Learn K均值聚类API2.2、K均值聚类案例 1、K均值聚类 K-均值&#xff08;K-Means&#xff09;是一种聚类算法&#xff0c;属于无监督学习。K-Means在机器…

Linux学习笔记————C 语言版 LED 灯实验

这里写目录标题 一、实验程序编写二、 汇编部分实验程序编写三、C 语言部分实验程序编写四、编译下载验证 汇编 LED 灯实验中&#xff0c;我们讲解了如何使用汇编来编写 LED 灯驱动&#xff0c;实际工作中是很少用到汇编去写嵌入式驱动的&#xff0c;毕竟汇编太难&#xff0c;而…

鸿蒙原OS开发实例:【ArkTS类库单次I/O任务开发】

Promise和async/await提供异步并发能力&#xff0c;适用于单次I/O任务的场景开发&#xff0c;本文以使用异步进行单次文件写入为例来提供指导。 实现单次I/O任务逻辑。 import fs from ohos.file.fs; import common from ohos.app.ability.common;async function write(data:…

【MySQL】多表查询全解-【多表关系/内外自连接/子查询/多表查询案例链接】(可cv代码&案例演示)

前言 大家好吖&#xff0c;欢迎来到 YY 滴MySQL系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过C Linux的老铁 主要内容含&#xff1a; 欢迎订阅 YY滴C专栏&#xff01;更多干货持续更新&#xff01;以下是传送门&#xff01; YY的《C》专栏YY的《C11》专栏YY的…

深入理解 Vue3 中使用 v-model技术实现双向数据绑定

引言 在 Vue3 中&#xff0c;v-model 是一个非常有用的指令&#xff0c;它提供了一种简洁的方式来实现组件之间的双向数据绑定。本文将深入探讨 Vue3 中的 v-model 技术&#xff0c;包括它的工作原理、使用场景以及如何在自定义组件中应用 v-model。 一、v-model 的工作原理 在…

STM32 M3内核寄存器概念

内容主要来自<<M3内核权威指南>> 汇编程序中的最低有效位&#xff08;Least Significant Bit&#xff09;。LSB是二进制数中最右边的位&#xff0c;它代表了数值中的最小单位。在汇编程序中&#xff0c;LSB通常用于表示数据的最小精度或者作为标志位。 ---------…

基于MiniExcel的三种常用导出Excel方法(固定列导出、动态列导出、按模板导出)

为了方便代码编写和测试&#xff0c;把很多代码都放在一个class里面&#xff0c;实际开发根据需要放到对应的目录下即可。 1.使用nuget下载安装miniexcel&#xff1b; 2.编写对应的测试接口&#xff0c;具体代码如下: using Microsoft.AspNetCore.Authorization; using Micr…

sql中如何添加数据?

添加 在 SQL 中添加数据通常使用INSERT语句。INSERT语句用于将新的数据行插入到数据库表中。 基本的INSERT语句语法如下&#xff1a; INSERT INTO table_name (column1, column2,...) VALUES (value1, value2,...);其中&#xff1a; INSERT INTO&#xff1a;指定要插入数据…

探索设计模式的魅力:AI大模型如何赋能C/S模式,开创服务新纪元

​&#x1f308; 个人主页&#xff1a;danci_ &#x1f525; 系列专栏&#xff1a;《设计模式》 &#x1f4aa;&#x1f3fb; 制定明确可量化的目标&#xff0c;坚持默默的做事。 AI大模型如何赋能C/S模式&#xff0c;开创服务新纪元 数字化飞速发展的时代&#xff0c;AI大模型…

从第三方数据集成工具迁移到Apache SeaTunnel的实操经验分享

在如今这个数据至上的商业环境中&#xff0c;构建一个高效、可靠的数据仓库对企业来说不仅是一项基础性工作&#xff0c;更是推动业务洞察、决策支持和创新的关键&#xff0c;而数据集成技术在此发挥着至关重要的作用&#xff0c;其时效性和准确性直接影响着下游业务的效率和产…

连接Redis不支持集群错误,ERR This instance has cluster support disabled,解决方案

1. 问题背景 调整redis的配置后&#xff0c;启动程序时&#xff0c; 会报如下错误&#xff1a; [redis://172.16.0.8xxx]: ERR This instance has cluster support disabledSuppressed: io.lettuce.core.RedisCommandExecutionException: ERR This instance has cluster supp…

电商技术揭秘四:电商平台的物流管理系统

文章目录 引言一、物流管理系统的功能与架构1.1 物流管理系统在电商平台中的作用概述保障订单的及时配送优化库存管理控制运营成本提升客户服务水平支持数据驱动的决策应对市场变化 1.2 订单处理功能分析自动化处理流程订单分配与履行错误检测与处理机制实时订单状态更新订单数…

群晖配置FTP服务结合内网穿透实现公网访问本地NAS中储存文件

文章目录 1. 群晖安装Cpolar2. 创建FTP公网地址3. 开启群晖FTP服务4. 群晖FTP远程连接5. 固定FTP公网地址6. 固定FTP地址连接 本文主要介绍如何在群晖NAS中开启FTP服务并结合cpolar内网穿透工具&#xff0c;实现使用固定公网地址远程访问群晖FTP服务实现文件上传下载。 Cpolar内…