在Archlinux中通过VSCode开发STM32
ST官方连接:浏览器搜索 VSCode STM32
Windows 中需要安装 STM32CubeMX 和 VSCode + STM32CubeIDE for Visual Studio 插件,驱动在安装 STM32CubeMX 时已同步安装。直接开始新建项目即可。
安装STM32CubeMX
可以使用 paru 或 yay 安装 AUR 软件包
1 | yay -S STM32CubeMX |
JRE(Java Runtime Environment):如果只是需要运行 Java 程序,安装 JRE 即可。
JDK:JDK 包含了 JRE 和开发工具,所以开发 Java 程序需要安装 JDK。
安装 vscode + 插件 STM32CubeIDE for Visual Studio
1 | yay -S visual-studio-code-bin |
打开 VSCode 软件,搜索插件并安装
检查 stlink 驱动
ls /dev 如果没有自己的stlink 则需要检查和设置参考链接
查看是否有如下的结果输出,没有的话就需要安装USB驱动
1 | sudo dmesg | grep -i stlink |
设置 udev 让 linux 将 stlink 链接到 /dev/xxx (注意根据搜索结果修改路径; *.rules代表bin目录中的所有.rules文件)
1 | find / -name "*.rules" |
注销或重启后再次检查 /dev 如下为 stlink-v2 的正确响应
1 | ls -al /dev/stlinkv2_2 |
连接好硬件后先通过 STM32_Programmer_CLI 测试一下 参考链接
找到 VSCode 插件安装的位置(可以用find指令),如下是我电脑中 VSCode 插件的安装路径
~/.local/share/stm32cube/bundles/programmer/2.21.0/bin/STM32_Programmer_CLI
检测到 ST-LINK 和 STM32F103 通过 SWD 方式连接的结果
1 | ./STM32_Programmer_CLI -c port=SWD freq=4000 |
单片机项目
在 VSCode 中点击 STM32 插件图标,点击 Launch STM32CubeMX (如果需要设置路径可通过 which STM32CubeMX 指令查询)。
在弹出图形化界面中新建和设置stm32芯片。Project Manager 页面中设置项目名和存储路径,Tool/IDE 选择 CMake ,最后点击 GENERATE CODE 按钮生成项目工程。关闭 STM32CubeMX
返回 VSCode 界面,打开 CudeMX 生成的文件夹,在弹出气泡或 STM32 插件中自行点击 Setup STM32Cube project(s) 完成项目设置(重点,不然无法CMake插件中的编译选项没有被正确初始化,导致无法调试)。点击状态栏 build 选项查看是否编译成功,成功后点击 Run and Debug 按钮开始调试。