linux基于VSCODE搭建stm32开发环境
1.安装VSCODE
https://code.visualstudio.com/
2.安装系统相关编译软件
sudo apt install build-essential gdb sudo apt install gcc-arm-none-eabi sudo apt install make cmake sudo apt install openocd sudo apt install gdb-multiarch
3.安装VSCODE插件
cortex-debug
4 安装stlink驱动
下载地址:https://github.com/stlink-org/stlink/releases
根据自己的系统,选择合适的版本,我下载deb包
5.使用使用STM32CubeMX生成项目,使用STM32CubeMX创建工程,其中在工程管理里的工具链/IDE里选择Makefile,其他不需要改变
6. 用VSCODE打开生成的项目
生成的代码没有问题,也可以正常编译下载,但是VSCODE提示报错,是因为VSCODE里无法识别一些宏定义和文件所在的位置,处理方法:在项目的c_cpp_properties.json文件(如果没有这个文件可以ctrl+shift+p
搜索c/c++配置来生成一个配置文件,也可以自己新建一个)里按照如下方式修改,即可修复爆红问题:
将Makefile中包含的定义以及路径添加到c/c++插件的配置中
7. 编译:在终端执行make命令
make
8. 烧写
8.1 添加烧写的配置文件
8.2 通过命令将编译的产物文件烧写进芯片
# 第一个-f后面是烧写的配置文件路径 # -c “program \"产物文件路径\"” # 其他可以不用改,如需了解详细openocd参数,进官网查看文档 /usr/bin/openocd -s /usr/share/openocd/scripts -f /home/navy/Desktop/other/st/vscode_led/stm32f1discovery.cfg -c "tcl_port disabled" -c "gdb_port disabled" -c "tcl_port disabled" -c "program \"/home/navy/Desktop/other /st/vscode_led/build/vscode_led.elf\"" -c reset -c shutdown
9. 运行结果
10.调试
创建launch.json
{ "version": "0.2.0", "configurations": [ { "name": "Cortex Debug", "cwd": "${workspaceFolder}", "executable": "./build/LED.elf", "request": "launch", "type": "cortex-debug", "runToEntryPoint": "main", "servertype": "stlink", "gdbPath": "/usr/bin/gdb-multiarch" } ] }
11.运行调试