如何使用VScode开发STM32【喂饭级教程】-全过程讲解

目录

一、前言

二、安装必要的软件

三、安装VScode插件

1、CMAKE

[2、STM32CubeIDE for Visual Studio Code](#2、STM32CubeIDE for Visual Studio Code)

四、创建STM32工程

五、使用VScode编译STM32工程

六、如何添加自定义代码文件编译进工程


一、前言

作为嵌入式新手,使用VScode开发STM32,相较于传统的KEIL软件能大幅提升开发速度,还可以安装AI代码插件,快速生成代码,解决BUG。这篇文章从安装软件和VScode插件、创建STM32工程、编译执行代码、添加自定义代码文件一部搞定。让小白也能轻松入坑!!

还有同步视频教程: 如何使用VScode开发STM32(小白轻松搞定)_哔哩哔哩_bilibili

本文测试所用的工程代码:
链接: https://pan.baidu.com/s/1u__yJMgrDp34DWXNdFUlBA?pwd=mb97 提取码: mb97

二、安装必要的软件

1、VSCodeUserSetup-x64(建议最新版)可以直接在官网下载VScode官网

2、SetupSTM32CubeMX-6.16.0-Win (必须是6.10版本以上,否则无法用VScode开发)

3、SetupSTMCUFinder-6.1.0-Win(STM32选型软件,必须)

4、cmake-4.1.1-windows-x86_64(必须)

5、SetupSTM32CubeProgrammer_win64(可选)

所需要的软件我已经放在链接里面了

通过网盘分享的文件:VScode开发STM32

链接: https://pan.baidu.com/s/1hdK8C6_nNJ-nyQ0eUCIaPA?pwd=nyjj 提取码: nyjj

三、安装VScode插件

1、CMAKE

2、STM32CubeIDE for Visual Studio Code

同样图标的插件有很多,认准下面这个,搜索STM32Cu,选择第一个

四、创建STM32工程

我使用的是STM32F103ZET6,打开STM32CubeMX软件新建工程,选择对应的芯片型号。

我们简单配置一下,已达到测试的目的就可!

1、配置RCC(必须)

2、配置SYS,打开SW调试接口(必须)

3、打开USART1。作为代码测试打印接口

4、配置时钟树(按需配置)

5、【重要】生成工程文件

生成工程文件后,可以直接关闭STM32CubeMX软件。

五、使用VScode编译STM32工程

使用VScode打开STM32工程,打开的界面如下图

1、点击运行和调试-->点击创建launch.json文件-->选择调试器类型

创建成功后保存关闭即可,因为我使用的是ST-Link,大家根据自己的情况选择。

生成的文件代码如下,如果不能生成的话,也可以在.vscode目录下创建launch.json,粘贴以下代码

{

// 使用 IntelliSense 了解相关属性。

// 悬停以查看现有属性的描述。

// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387

"version": "0.2.0",

"configurations": [

{

"type": "stlinkgdbtarget",

"request": "launch",

"name": "STM32Cube: STM32 Launch ST-Link GDB Server",

"origin": "snippet",

"cwd": "${workspaceFolder}",

"preBuild": "${command:st-stm32-ide-debug-launch.build}",

"runEntry": "main",

"imagesAndSymbols": [

{

"imageFileName": "${command:st-stm32-ide-debug-launch.get-projects-binary-from-context1}"

}

]

}

]

}

2、点击STM32Cube插件-->点击Setup STM32Cube Project(s)-->点击Configure-->选择Debug-->然后选择自己的STM32型号-->点击Save and Close

3、编译运行代码,如图操作

六、如何添加自定义代码文件编译进工程

1、在工程根目录创建test文件夹,添加test.c和test.h文件,如下图

2、在CMake文件夹下创建user目录,在user目录下创建CMakeLists.txt文件

3、在CMakeLists.txt文件中添加一下内容

set(USER_Include_Dirs

${CMAKE_CURRENT_SOURCE_DIR}/../../test/

)

set(USER_Application_Src

${CMAKE_CURRENT_SOURCE_DIR}/../../test/test.c

)

target_include_directories(stm32cubemx INTERFACE ${USER_Include_Dirs})

target_sources({CMAKE_PROJECT_NAME} PRIVATE {USER_Application_Src})

4、打开工程根目录下的CMakeLists.txt文件,在第39行添加一行代码

add_subdirectory(cmake/user)

如下图所示

然后重新生成、运行、调试代码即可。

注意:如果工程文件改变的路径,或者换了调试器导致编译代码失败。应该删除build目录下的debug文件夹,然后重新编译。

本文测试所用的工程代码:
链接: https://pan.baidu.com/s/1u__yJMgrDp34DWXNdFUlBA?pwd=mb97 提取码: mb97

同步视频教程: 如何使用VScode开发STM32(小白轻松搞定)_哔哩哔哩_bilibili

相关推荐
郝学胜-神的一滴43 分钟前
Linux Socket编程核心:深入解析sockaddr数据结构族
linux·服务器·c语言·网络·数据结构·c++·架构
云深麋鹿2 小时前
五.排序笔记
c语言·数据结构·算法·排序算法
海上Bruce8 小时前
C primer plus (第六版)第十二章 编程练习第3题
c语言
SundayBear8 小时前
零基础入门MQTT协议
c语言·单片机
我能坚持多久9 小时前
D16—C语言内功之数据在内存中的存储
c语言·开发语言
嗯嗯=9 小时前
STM32单片机学习篇9
stm32·单片机·学习
福楠10 小时前
C++ STL | map、multimap
c语言·开发语言·数据结构·c++·算法
极客小云10 小时前
【基于 PyQt6 的红外与可见光图像配准工具开发实战】
c语言·python·yolo·目标检测
Ethernet_Comm10 小时前
从 C 转向 C++ 的过程
c语言·开发语言·c++
爱编码的小八嘎13 小时前
c语言对话-1.auto_ptr再回忆
c语言