【VScode】STM32CubeMX+VScode(含trae豆包AI插件)开发STM32程序(基于Cmake工程)

本实验使用工具清单:
使用逻辑:

软件名称 使用场景
STM32CubeMX 新建文件和参数的设置
VScode 代码的编辑,AI辅助,程序调试,程序下载烧录
  1. Visual Studio Code 1.120.0 (前往官网下载最新版
  2. STM32CubeMX 6.17.0(点击下载)
    在这里插入图片描述

准备工作

安装上述软件(略)

为VScode配置隔离开发环境-cubeMX

在这里插入图片描述
在这里插入图片描述

##为VScode切换开发环境
在这里插入图片描述

为新环境安装插件

1. 安装STM32CubelIDE for Visual Studiio Code插件

在这里插入图片描述

安装好后会自动为我们安装如下工具链
在这里插入图片描述

2. 安装Cortex-Debug插件

在这里插入图片描述

3. 安装clangd

有的安装了这个插件,右键这个函数的define才能够进入到函数的定义包括这个程序的缩进
在这里插入图片描述

4. 安装OpenOCD(下载解压即可)

https://download.csdn.net/download/cnxzzcn/92882990

在这里插入图片描述

5. 安装TRAE智能工具-字节跳动(豆包)

在这里插入图片描述
简单配置一下-笔者全勾上了
在这里插入图片描述
配置trae插件-根据自身习惯
在这里插入图片描述

更新ST-link固件

在这里插入图片描述
在这里插入图片描述

开干

一、使用STM32CubeMX新建工程

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

cmake工程和cubeIDE工程优缺点-可问问豆包
在这里插入图片描述

在这里插入图片描述

二、在VScode中导入工程

在这里插入图片描述
在这里插入图片描述

导入文件,VScode会自动识别cmake项目,右下角yes,不然编译会报错。
在这里插入图片描述

C/C++Extension要点击取消,因为STM32插件自己带了,安装会有冲突

编译程序

在这里插入图片描述
或者
在这里插入图片描述

调试程序

按下 Ctrl + Shift + P(Windows/Linux)Cmd + Shift + P(Mac)打开命令面板
输入 Preferences: Open Settings (JSON) 并回车
这样就能直接编辑 settings.json 文件了。
在这里插入图片描述
在这里插入图片描述

     ,   // ← 这里必须有逗号!  
    "cortex-debug.openocdPath": "D:\\【要换成自己的】\\env\\OpenOCD20260302\\bin\\openocd.exe",  // ← 在这里配置!  
    "launch": {
        "configurations": [
            {
                "name": "STM32 Debug & Download",
                "type": "cortex-debug",
                "request": "launch",
                "cwd": "${workspaceRoot}",
                "executable": "${command:cmake.launchTargetPath}",
                "servertype": "openocd",
                "configFiles": [
                    "interface/stlink.cfg",
                    "target/stm32f1x.cfg"
                ],
                "device": "STM32F103C8",
                "interface": "swd",
                "runToEntryPoint": "main",
                "showDevDebugOutput": "parsed"
            }
        ],
        "compounds": []
    }

或者直接这样

{
    "cmake.environment": {
        "PATH": "${env.PATH}"
    },
    "debug.allowBreakpointsEverywhere": true,
    "stm32cube-ide-build-cmake.ignoreCubeProjectDiscovery": false,
    "cortex-debug.armToolchainPath": "",
    "cortex-debug.JLinkGDBServerPath": "",
    "extensions.ignoreRecommendations": true,
    "trae.chatLanguage": "cn"

     ,   // ← 这里必须有逗号!  
    "cortex-debug.openocdPath": "openocd",  // ← 在这里请提前配置openocd环境变量,否则用绝对地址!  
    "launch": {
        "configurations": [
            {
                "name": "Debug & Download",
                "type": "cortex-debug",
                "request": "launch",
                "cwd": "${workspaceRoot}",
                "executable": "${command:cmake.launchTargetPath}",
                "servertype": "openocd",
                "configFiles": [
                    "interface/stlink.cfg",
                    "target/stm32f1x.cfg"
                ],
                "device": "STM32F103C8",
                "interface": "swd",
                "runToEntryPoint": "main",
                "showDevDebugOutput": "parsed"
            }
        ],
        "compounds": []
    }
}

在这里插入图片描述
在这里插入图片描述

Logo

AtomGit AI 社区提供模型库、数据集、Agent、Token等资源

更多推荐