如何使用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

相关推荐
Heartache boy4 分钟前
DWT基础应用与获取程序运行时间Debug练习(上)
笔记·stm32·单片机
我要成为嵌入式大佬36 分钟前
正点原子MP157--问题详解--五(beep编写报错端口繁忙)
stm32·嵌入式硬件·学习
范纹杉想快点毕业38 分钟前
Zynq开发视角下的C语言能力分级详解
c语言·开发语言
振浩微433射频芯片1 小时前
433MHz在智能家居中的应用大全(一):智能窗帘篇——为什么稳定比花哨更重要?
网络·单片机·嵌入式硬件·物联网·智能家居
鸟电波1 小时前
硬件笔记——Allegro绘制器件封装和过孔
笔记·嵌入式硬件·智能硬件
Jason_zhao_MR1 小时前
机器人主控方案米尔RK3576 + ROS2,NPU加速实现目标跟随与机械臂抓取
人工智能·嵌入式硬件·机器人·嵌入式
咸鱼嵌入式1 小时前
【AutoSAR】详解CANIF模块
单片机·mcu·车载系统·autosar
小小的代码里面挖呀挖呀挖1 小时前
恒玄BES蓝牙耳机开发--IIC接口应用
笔记·单片机·物联网·学习·iot
橘子编程1 小时前
GoF 23 种设计模式完整知识总结与使用教程
java·c语言·开发语言·python·设计模式
意疏1 小时前
【C语言】解决VScode中文乱码问题
c语言·开发语言·vscode