利用 VsCode + EIDE 进行嵌入式开发(保姆级教程)

配置C语言编辑编译环境

一、VsCode的安装:

  • 这里就一个需要注意的,尽量安装System版本的,User版本权限可能不够

  • 如果不小心安装了User版本,也没必要卸载重装----在软件属性栏设置为默认以管理员身份运行即可



二、配置C/C++编辑环境:

  • 这个我们只需安装**"C/C++ Extension Pack"**即可,它会帮自动帮你安装编辑C/C++所需的所有插件


三、配置 C/C++的编译环境

1. 下载MinGW64编译器,并配置好系统环境变量

  • 注意:编译器最好是放在一个自己能找到且不会误删的路径,建议单独创建一个"Path"文件夹,方便统一管理

2. 验证环境是否搭建成功

  • 打开命令提示符cmd

  • 输入gcc --version命令

  • 如显示版本信息则表明环境配置成功




配置单片机编辑、编译环境:

一、配置 Keil_v5 的 STM32、C51 共存版

  1. 在安装目录创建Keil_v5/Keil_C51C51_STM32文件夹(确保路径无中文)

  2. 分别安装C51版本至Keil_C51目录,STM32版本至C51_STM32目录

  3. 合并关键文件:

    • 移动Keil_C51/C51文件夹内容至C51_STM32目录

    • 合并Keil_C51/UV4内容至C51_STM32/UV4(跳过同名文件)

  4. 完成软件授权激活

可以去B站看教程:KEIL_C51和KEIL_MDK的安装和融合



二、在VsCode的插件库安装EIDE:

  • 操作非常简单,这里就不多赘述了

  • 在安装完成后,EIDE还会提示我们安装一个NET6,若未能成功安装可以用我提供的资源包



三、配置EIDE工具链:

1. 在你的Keil5的安装目录下找到:

  • ARMCC文件夹路径

  • ARMCLANG文件夹路径

  • UV4.exe程序文件路径


2.安装MakeFile工具,并配置好环境变量(步骤同C/C++编译环境的配置)


3. 如果你还有C51开发需求的话,还需配置以下路径

某些人可能会没有ARM文件夹或没有ARMCC文件夹,这时需要去网上下载Keil5的STM32的芯片扩展包,根据自己的芯片型号下载



四、配置setting.json:

1. 在VS Code中打开settings.json文件:


2. 头文件路径配置

  • 根据自己的情况自定义一下,这里定义了之后,就不会报错头文件引用相关的了,如果需要写其他板子,比如TI,那么在这里添加一下TI的头文件路径就行了

注意:

1. 这里还是要用/而不是\ (避免转义字符问题)
2. 多条语句之间用,分隔开

3. 不要一股脑全写上去,否则索引效率会变得极低,根据需求适当注释或开放一些即可


2. 宏定义配置:

  • 由于嵌入式的c语言和标准c语言不太一样,所以我们这里配置一下宏定义,防止一些变量没有(主要是C51)

实在不知道如何配置的,可以把你现在的json配置和需要补充的json配置发给AI,让它给你补充,然后你将相应路径修改正确即可
以上及之后的json配置均参考于B站UP"左岚",大家可以去关注一下



五、EIDE项目配置:

1. 构建器配置

  • 我们一般不直接用VScode创建工程,而是利用Keil_v5创建工程后----再利用EIDE导入工程,这样构建器的配置基本就自动完成了(否则从0开始配置麻烦得很)

构建器等同于Keil_v5中的"魔法棒"


2. 项目属性配置:

  • 包含目录:和Keil一样,如果编译时,头文件报错,包含头文件路径即可

  • 预处理宏定义 :报错未选择芯片型号,此时在这里添加相应芯片型号即可

在这里我们就基本完成了在 VScode 上进行单片机代码的编辑、编译功能了 ---- 如果你只对C51开发有需求,那可以不用往下看了




配置STM32烧录、调试环境

一、配置STM32烧录环境

C51不建议用VsCode+EIDE进行烧录,直接用STC官方烧录软件即可


1. 打开EIDE项目资源管理器

  • 这些工具会自动安装至C:/.eide用户文件夹


自此我们就已经能用 VScode 实现代码烧录功能了



二、配置STM32调试环境

C51由于没有提供相关接口,所以无法软件调试 ---- 可以用LCD打印变量值达到调试目的


1. 在VsCode的插件库安装Cortex-Debug:


2. 配置Cortex-Debug工具链


这里的第一条工具链路径,只要是GDB.exe所在路径下即可,看情况设置(通常都是在bin路径下)


3. 生成调试文件

  • 这里要先编译、烧录代码后才能开始调试



拓展插件推荐:

1. 汉化插件:可以把VsCode的界面汉化



2. 背景插件:可以让你的 Vscode 变得更优雅

由于该插件需要改动 VScode 这个软件的底层代码,所以 VScode 会报错"软件似乎损坏,请重新安装...",忽略就好了



3. 文件标识插件:可以让你的文件图标变得更优雅




常见问题解决方案:

烧录相关问题

  • 烧录失败:检查连接线路和驱动安装

  • 芯片锁死

    1. 调换SWD和SWK接口

    2. 使用STM32CubeMX软件尝试解锁

    3. 按住复位键,点击下载时松开

    4. 联系供应商(可能需要BOOT0引脚短接3.3V)



编码与文件问题

  • 注释乱码

    1. 检查文件编码格式(GBK/UTF-8一致性)

    2. 确保编辑器正确识别文件编码

    3. 避免在不同编码间错误转换

    4. 注意跨平台传输的编码兼容性

  • 文件无法访问

    1. 检查头文件声明和路径正确性

    2. 确保路径不含中文字符

    3. 在eide.json中添加缺失文件引用

    4. EIDE项目,C/C++属性栏的包含目录中添加该文件路径



工程配置问题

  • 导入工程:选择不在同一路径保存EIDE文件,创建专用"EIDE"文件夹

  • 芯片型号错误:EIDE项目, C/C++属性栏的处理宏定义中添加对应芯片型号:

    • USE_HAL_DRIVER

    • 对应芯片型号(如STM32F10X_MD、STM32F103xE等)



配置完成建议

完成所有配置后,右键项目选择"导出EIDE设置",备份配置以避免重复配置工作。




相关推荐
深蓝海拓4 分钟前
PySide6从0开始学习的笔记(二十六) 重写Qt窗口对象的事件(QEvent)处理方法
笔记·python·qt·学习·pyqt
中屹指纹浏览器4 分钟前
中屹指纹浏览器多场景技术适配与接口封装实践
经验分享·笔记
qqssss121dfd6 分钟前
STM32H750XBH6的ETH模块移植LWIP
网络·stm32·嵌入式硬件
渐暖°22 分钟前
【leetcode算法从入门到精通】5. 最长回文子串
vscode·算法·leetcode
宏集科技工业物联网41 分钟前
预防性维护与能源效率:SCADA 在工业运营中的关键作用
经验分享·scada·预测性维护·工业自动化·能耗管理
想放学的刺客2 小时前
单片机嵌入式试题(第27期)设计可移植、可配置的外设驱动框架的关键要点
c语言·stm32·单片机·嵌入式硬件·物联网
BugShare2 小时前
Obsidian 使用指南:从零开始搭建你的个人知识库
笔记·obsidian
天昊吖2 小时前
stc8H启用DMA发送后 卡住【踩坑日志】
单片机
李永奉2 小时前
杰理芯片SDK开发-ENC双麦降噪配置/调试教程
人工智能·单片机·嵌入式硬件·物联网·语音识别
BackCatK Chen2 小时前
第 1 篇:软件视角扫盲|TMC2240 软件核心特性 + 学习路径(附工具清单)
c语言·stm32·单片机·学习·电机驱动·保姆级教程·tmc2240