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.运行调试

 

posted @ 2024-03-03 17:59  navysummer_hardware  阅读(114)  评论(0编辑  收藏  举报