使用 VSCode 开发调试 STM32 单片机尝试

本文详细介绍了如何在 Windows 环境下使用 VSCode 配置和调试 STM32F103C8T6 单片机,包括环境准备、CubeMX 创建Makefile工程、VSCode的配置文件、调试设置以及自定义配置文件的创建。文章强调了环境变量设置、软件选择和插件安装的重要性,并提供了相关资源链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用 VSCode 开发调试 STM32 单片机尝试


本文记录基于 Windows + DAP-Link 开发 STM32F103C8T6 的实践过程,其他操作系统或芯片应该也只是大同小异的问题。

注意:工作空间中千万不要出现中文目录和空格!



一、环境准备

硬件环境就是 STM32F103C8T6 核心板和 DAP 调试器,复杂的主要在软件部分。

调试时需要让gdb链接openocd,因此需要telnet工具。Windows下直接在Windows功能里打开telent client并重启就行

1.1_软件

  1. VSCode
    可以使用普通版或便携版,我使用的是大佬制作的便携版:https://portapps.io/app/vscode-portable/

  2. STM32CubeMX
    用来生成 Markfile 工程,已有工程模板的话不必须安装。使用 CubeMX 时需要用到 Java , Java 64位下载地址:https://java.com/en/download/manual.jsp

  3. GNU Arm Embedded Toolchain
    ARM 的 GUN 工具链,下载地址:https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads
    安装完成后需要添加到环境变量,使用命令 arm-none-eabi-gcc -v 测试。

  4. OpenOCD
    下载调试用的工具,已编译好的Windows平台可用二进制文件下载地址: https://gnutoolchains.com/arm-eabi/openocd/
    同样安装完成后需要添加到环境变量,使用命令 openocd -v 测试。

  5. make
    下载地址:http://gnuwin32.sourceforge.net/packages/make.htm
    同上,环境变量,make -v

  • 添加环境变量

    因为所有个工具都放在了同一个目录下,所以我喜欢这么加环境变量,环境变量添加完后需要点击所有的“确定”然后重启命令窗口才生效。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1DaH6Oj7-1586013415251)(https://i.loli.net/2020/03/28/mYKhjFO7NiBXR4r.png)]

    如果出现配置完环境变量 VSCode 中的终端识别不到的情况重启电脑可以解决。

1.2_VSCode-插件

  1. C/C++
实时语法检查。
  1. ARM
    ARM的汇编语法高亮

  2. Cortex-Debug

MCU的调试核心,比 VSCode 默认的调试界面强大很多。为了更好的使用这个工具进行调试我们还需要对应单片机的 .svd 文件,这个文件定义了某个芯片的非常详细的信息,包含了哪些片内外设、每一个外设的硬件寄存器、每一个寄存器中每一个数据位的值以及详细的说明信息等等。svd 文件可以在单片机的固件库原包里找到,也可以去其他地方下载,这里推荐一个地方:<https://github.com/posborne/cmsis-svd/tree/master/data>

二、用CubeMX新建Makefile工程

CubeMX 的下载和安装就不多说了,注意运行它需要 java ,而且网络不好的情况还需要挂代理。

2.1_添加软件包

启动 CubeMX 后点击 "Help" -> "Manage embedded software packages" 可以进入软件包管理页(快捷键Alt+U)。进入后根据需要安装相应型号的软件包即可。

2.2_创建工程

  1. 点击软件首页的 ACCESS TO MCU SELECTOR 进入MCU选择器选择一个芯片,然后软件会跳到工程配置界面。

  2. 配置RCC. 时钟是必须要配置的,先在 Pinout&onfiguration 里配置时钟源引脚,然后去 Clock Configuration 中配置时钟树。配置时钟树时先选择好时钟源输入,然后在 HCLK(MHz) 中输入需要的频率并回车软件就会自动配置后面的部分。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8PyPtE4G-1586013415253)(https://i.loli.net/2020/03/29/E8OqzKV9CXvsSMD.png)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值