使用VSCode开发STM32(基于EIDE插件)

VSCode开发stm32

  • 下载插件
  • 配置EIDE
  • 添加编译器
  • 配置环境
  • 编译下载
  • VScode是一个非常好用的集成开发环境,使用VSCode的EIDE等插件进行stm32单片机的开发,可以大大提高开发效率

    没有下载VSCode的可以看看我
    这篇文章

    以下是基于STM32F103C8T6的标准库进行的,HAL库或者其他芯片也是换汤不换药,基本大差不差

    下载插件

    C/C++ Extension Pack

    Embedded IDE

    Cortex-Debug

    配置EIDE

    左边菜单栏找到 EIDE插件
    点击 安装实用工具

    依次安装

    Cppcheck
    GNU Arm Embedded Toolchain
    OpenOCD Programmer

    安装完后相应后面会变成勾 如下图

    安装完成后右下角会提示重启
    点击OK

    重新进入VSCode后
    先点EIDE插件
    再在左下角找到设置

    在上方搜索栏输入 elf
    勾选 编译完成后将.axf转换为.elf

    添加编译器

    在左边菜单栏点击 扩展
    找到 EIDE
    右击 设置

    Keil5的安装目录 找到
    ARMCC
    ARMCLANG
    这两个文件
    如果没有安装Keil5的可以看我这篇文章


    在VSCode中分别添加这两个编译器的路径

    配置环境

    点击EIDE插件导入项目
    选择 MDK


    选择 ARM

    然后右下角会提示 是否要将该EIDE项目与原来的Keil项目共存于同一目录
    可以选择 Yes
    但是为了方便后续对工程进行管理
    我们选择 No
    即建一个新的文件夹专门用来存放EIDE项目

    注意!!
    整个项目路径不能有中文
    不然后面编译会报错

    在原工程文件夹的目录下建一个新的文件夹

    点击继续


    信任

    导入完成后点击EIDE插件
    在最上方展开 EIDE PROJECTS
    首先添加 芯片支持包

    From Repo 是从网上下载
    From Disk 是从我们自己的文件中选择
    我们选择后者

    我这里的工程是基于STM32F103C8T6
    所以我选择STM32F1xx_DFP


    添加成功

    选择烧录器
    找到 烧录配置
    点击最右边的双箭头
    选择OpenOCD
    它支持ST-Link和DAP-Link
    我使用的是DAP-Link

    更改接口配置
    默认是ST-Link
    我选择 cmsis-dap.cfg
    根据实际情况选择


    编译下载

    到这里基本上就配置完成
    点击下图按键或按F7进行编译

    因为我使用的是标准库,所以会报错
    报错的原因是缺少了宏定义
    即缺少 STM32F10x_MD

    如果使用的是CubeMX生成的项目直接编译就可以通过

    关于这个宏定义可以看看这篇文章

    找到 项目属性
    预处理宏定义
    在上方输入 STM32F10x_MD

    添加成功

    再次进行编译
    输入结果显示 build successfully

    但是!!!

    这个编译输出是错误的
    这时如果点击烧录是烧录不了的,会报错

    点此按键进行下载
    确保已经将电脑用ST-Link或DAP-Link与开发板连接


    不出意外的话会报错
    以下是错误的下载输出

    解决方法如下

    找到 构建配置
    点击右边的编辑

    全局选项
    勾选 Use MicroLIB

    链接器
    取消勾选 不生成 Hex/Bin 文件

    再次编译
    以下是正确的编译输出结果

    再次点击下载
    下载成功!


    OKay希望这篇文章对你有所帮助

    作者:OKay_J

    物联沃分享整理
    物联沃-IOTWORD物联网 » 使用VSCode开发STM32(基于EIDE插件)

    发表回复