ashwatermelon

ashwatermelon

【学习笔记】用vscode+EIDE插件搭建stm32开发环境并成功调试

本人是大一电子信息工程专业的学生,目前在自学单片机,在某天刷 b 站的时候看到用 vscode 开发 stm32 的视频: https://www.bilibili.com/video/BV1nr4y1R7Jb/?vd_source=e836ee461d07a48f2161731d0ca031f0
感觉很有意思,于是尝试按视频的教程自己搭建环境。

(一)下载 vscode#

首先是下载 vscode, 直接上网搜索 vscode 就能找到。
image
点击下载便可以安装。

(二)下载拓展#

下载完 vscode 后我们需要下载几个拓展,分别是如下框出的几个,其他的插件应该是这几个捆绑一块的,下完总共是 12 个拓展。
image
然后我还加了个书签拓展,有利于查看代码。
image

(三)安装实用工具#

安装如下三个实用工具:
image

(四)配置编译器路径#

这边跟视频一样,我是用 keil 开发过 stm32 项目的,所以可以在下面的文件夹里找到两个编译器。
image
keil 是在江协的视频下的学习资料里的:
https://www.bilibili.com/video/BV1th411z7sn/?spm_id_from=333.1007.top_right_bar_window_custom_collection.content.click&vd_source=e836ee461d07a48f2161731d0ca031f0
然后打开 vscode 的 EIDE 插件的设置,将两个文件的路径添加进去。
image

(五)导入项目#

接下来我们导入用 keil 创建好的项目,这边的项目是我学习江协的 stm32 教程的时候建起的,就直接导入这个了。
image
导入项目
image
选择 MDK
image
选 ARM(后面我试着编译 51 单片机发现选下面的那个可以)
image
找到项目文件
image
选择放在同一文件夹下
image
这样项目就导入完成了。

(六)添加芯片支持包和烧录配置#

image
点击添加芯片支持包,选择下面的添加离线支持包,这边离线支持包是江协视频里的,就直接添加了。
image
image
安装完成后还要选择具体芯片型号,否则无法编译。
image
接着进行烧录配置,我们选择 openocd,我的烧录器就是 stlink 的,所以不用动接口配置了。

(七)编译和烧录#

这些都配置完了我们就要准备编译了。
image
首先我们需要打开插件设置,搜索 elf,把 alf 转化 elf 勾选上。
image
然后我们点开构建器选项,再点开链接器,把不生成 HEX 的这一项给叉掉,我们要生成。
image
然后我们就可以编译。
image
会出现很多绿字,最后出现这个就成功了。
image
image
然后烧录就可以了。

(八)调试#

视频的调试是直接点到调试页面就有的,但我点过去发现并没有相符合的选项,只能自己摸索调试配置。
image
首先我们点到调试页面创建 launch 文件。
image
找到 openocd 的调试配置。
image
接着对这两项进行修改,executable 是文件的路径,你可以找找你编译生成的.elf 文件在什么地方,然后把它的路径粘贴到这里。在这里我搜了些资料,知道了项目文件夹的路径可以直接写个 “.” 来代替,然后 “\” 是 windows 的文件路径用的,“/” 是 linus 文件路径用的,不过这里这两种没有区别,只是 “\” 需要多打一个。
image
效果是这样。
image
然后我们要配置 configFiles,我查了好久才知道怎么配(网上好多文章都是一笔带过),这里我们需要配置接口和芯片的文件,格式上网随便抄一个,然后接口和芯片文件的名字可以在烧录配置那抄,效果是这样的。
image
最后选择 openocd 调试模式进行调试就好了。

那么用 vscode+EIDE 插件搭建 stm32 开发环境就这样了,本来没想过写的,结果前几天学习 github 库的创建的时候出了点岔子把我以前的模板全弄没了,只好重新弄,在弄的过程中有感而发就写了,作为我的第一篇博客。

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。