STM32CubeMX+官方VS code插件开发
代码: https://github.com/DuRuofu/STM32G070_VScode_Demo
一、准备工作
安装VS Code ,简单,略
安装STM32CubeMX,简单,略
安装STM32CubeIDE for Visual Studio Code插件:

插件安装误完成后右下角会弹出提示让安装插件的其他依赖,要点击确定,进行安装。
安装完成后如下:

二、使用STM32CubeMX新建工程
这里以STM32G070RBT6为例:
配置时钟源:

配置下载口:

配置LED引脚: 
配置时钟树:

工程配置(生成Cmake工程):

点击生成代码,生成工程如下:

三、使用VS Code编译并烧录
准备
使用VS Code 打开工程文件夹:

选择Debug预设

按照插件提示,确认配置工程即可
然后写个点灯代码(有很好的代码提示):

编译
点击生成即可: 
在CMake里还能看到程序占用:

调试与烧录
在调试与运行栏目里可以找到下载器,点击调试与运行即可进行下载

选择STlink:

下载好后就进入调试模式了:

点击运行就可以看到程序已经开始运行了,也可以添加断点,单步调试,查看寄存器和变量值
四、工程管理,添加新文件
这里我还是以点灯为例(下面信息含量较高,请仔细阅读和看图):

这里我模拟工程里常见的情况,自己有一个Users文件夹,里面有app.c 和app.h 和Components文件夹 ,Components文件夹里有我们写的通用组件
LED模块,led模块提供点灯函数,然后我们在app模块调用,最后再在main.c里初始化APP模块和调用APP任务,这是我们实际工程常见的结构:

可以看到到处都是红色报错,因为编译系统找不到我们的文件,需要在顶层的CMakeLists.txt文件里添加文件路径:
# 添加源文件到可执行文件
target_sources(${CMAKE_PROJECT_NAME} PRIVATE
Users/app.c
Users/Components/LED/led.c
# Add user sources here
)
# 添加包含路径
target_include_directories(${CMAKE_PROJECT_NAME} PRIVATE
Users
Users/Components/LED
# Add user defined include paths
)添加后就可以正常编译了:

五、其他
1.使用DAP下载器
参考: https://blog.csdn.net/v_for_van/article/details/150466953
