VSCode+STM32CubeMX
Why VSCode?
使用STM32CubeMX + VSCode进行日常开发,相比于使用CubeIDE,你可以得到:
- 更加简洁现代的图形化界面;
- 更加完善的社区和插件支持,更好地与git联动;
- 软件使用过程中几乎不会出现任何恶性BUG,微软亲儿子;
- 更高的自由度,适合平时习惯使用VSCode开发的同学使用;
但与此同时...你将会:
- 调试过程中无法使用Live Expressions(现场表达式),这意味着你无法在IDE内部的调试界面动态观测变量值;
- 每次都有点麻烦的需要手动初始化工程;
工具链与软件安装
STM32CubeMX
STM32CubeMX是一种图形工具,通过分步过程可以非常轻松地配置STM32微控制器和微处理器,以及为Arm® Cortex®-M内核或面向Arm® Cortex®-A内核的特定Linux®设备树生成相应的初始化C代码。
- 首先,来安装代码生成器STM32CubeMX吧!点击此处进入官网,并点击【获取软件】,再根据自己电脑的系统,点击【获取最新版本】;
- 接受协议,账号的注册或登录步骤几乎与STM32CubeIDE的教程相同,随后开始下载;
- 将安装程序解压出来,运行它,并按照推荐默认设置一路Next,便可以安装完成。
STM32CubeCLT
STM32CubeCLT是一套由ST公司为用户打包好的一整套嵌入式编程工具链,包括CMake、Ninja、Arm-GCC和STLink等,方便了统一管理与用户调用。
- 点击此处进入官网,下载安装的步骤几乎都与STM32CubeMX的教程相同~
- 安装完成后,可以使用命令行检查工具链是否正确安装;
如何做?
打开【终端】(系统自带软件),并创建PowerShell选项卡;
在窗口中依次输入下面三条命令:
shcmake --version ninja --version arm-none-eabi-gcc --version
若每一条命令都成功打印了版本信息,则代表安装成功:
OpenOCD
Why OpenOCD?
使用DAP-Link进行代码烧录或调试时需要此工具链,但由于其并不包含在STM32CubeCLT中,因此需要额外安装。
- 点击此处进入官网下载最新版压缩包,将其解压至C盘根目录(或其它非常便于管理且不会误删的目录);
- 将其文件夹内【bin】文件夹的路径地址复制下来备用;
- 将该路径地址添加进系统变量Path下,如果有的话记得删除复制路径时自带的双引号;
系统变量是啥?它在哪?
系统变量是环境变量的一种(Path),环境变量是 Windows 系统中一组用来告诉电脑该怎么工作的配置信息,它们像“指路牌”一样,帮助程序找到需要的文件或工具。比如,当你在命令行中输入程序名时,系统会根据环境变量里的信息去特定的路径里查找那个程序。可以把环境变量理解为电脑运行程序时用到的一些“提示信息”。
方法一:直接搜索
- 按下系统快捷键Win+S,搜索环境变量,打开它;
- 在弹出的窗口中,点击【全局变量】;
- 在【系统变量】中向下翻找,找到Path,双击编辑,即可在打开的窗口中【新建】路径了;
方法二:我键盘坏了
- 打开系统设置;
- 转到【系统】→【系统信息】;
- 点击【高级系统设置】,即可打开
方法一
第2步中的窗口了;
- 安装完成后,可以使用命令行检查工具链是否正确安装;
如何做?
打开【终端】(系统自带软件),并创建PowerShell选项卡;
在窗口中依次输入以下命令:
shopenocd --version
若成功打印了版本信息,则代表安装成功:
VSCode
VS Code(全称 Visual Studio Code)是一款由微软推出的免费、开源、跨平台的代码编辑器,其支持 Windows、macOS 和 Linux,拥有强大的功能和灵活的扩展性。
首先依然点击此处进入官网,点击中间最显眼的那个【下载】按钮吧;
打开安装程序后,保持默认(推荐)设置,直到此处需要确保所有的勾都勾选上,再继续安装步骤;
安装完成后,启动VSCode,来到左侧【插件】选项卡下,安装如下插件:
txtC++ CMake Tools Cortex-Debug 中文(简体)语言包 // 可选安装
安装完成后的面板:
工程生成的配置
现在你可以在STM32CubeMX中正常进行芯片选型及引脚/中间件配置,但在使用STM32CubeMX生成项目时,请将工具链选择为CMake;
看这里!
STM32CubeMX的芯片选型,基础配置与STM32CubeIDE完全一致哦!
将本Github仓库下的文件夹
VSCode_dev_env
(点击下载)中的所有文件复制进你的工程内;复制完后,在工程文件夹空白区域内右键,选择【通过Code打开】;
首次打开VSCode时,上方会弹出配置预设的选择,请选择【Debug】;
看这里!
如果错过了第4步,请使用Ctrl+Shift+P
快捷键,输入cmake: select configure preset
,即可回到第4步。
接下来,你可以...
- 使用快捷键进行老三样操作:
F5
调试,F7
编译,Ctrl+Shift+B
烧录; - 在
openocd.cfg
中可以配置芯片型号和烧录器种类; - 自己创建的源文件和头文件需要在
CMakeLists.txt
中添加;
- 使用快捷键进行老三样操作:
- 可选步骤将F8设置为「烧录」的快捷键:
- 使用
Ctrl+Shift+P
快捷键,输入keyboard
,选择下图中的选项: - 把下面内容覆盖到该json文件中(保存后生效):
json[ { "key": "f8", "command": "workbench.action.tasks.runTask", "args": "OpenOCD: flash" } ]
- 使用