Keil和VSCode协同开发STM32程序

系列文章

STM32单片机系列专栏

C语言术语和结构总结专栏


文章目录

[1. 配置环境](#1. 配置环境)

[2. 测试打开工程](#2. 测试打开工程)

[3. 测试编译工程](#3. 测试编译工程)


随着项目的复杂度上升,开发者不仅需要强大的硬件支持,还需要一个高效和灵活的开发环境。 vscode是一款集成大量可以便携开发插件的代码编辑器, Keil MDK是常用的嵌入式开发工具,但是其编程界面缺乏功能性。 通过在VSCode中集成Keil的编译和调试功能,可以在享受VSCode现代化代码编辑代码的同时,不失去Keil的硬件调试能力,并且两端的代码可以实时更新。


1. 配置环境

  • 首先是最基本的c语言环境配置,除了需要安装C语言插件,还需要安装Mingw。如果没有搭建C环境,点击链接看一下这篇文章。
  • vscode搭建C/C++环境
  • 如果想判断电脑有没有mingw,参考下面的步骤

打开cmd验证是否安装成功,输入:g++ --version

出现这个就代表电脑已经安装了mingw

  • 配置完成C环境后,也就是vscode中安装了下面三个插件,C/C++,C/C++ Extension Pack,C/C++ Themes,并且安装了mingw。
  • 接着打开vscode,点击左侧的扩展插件(或者按Ctrl+shift+X),打开插件搜索框。搜索Keil Assitant,点击下载并安装
  • 安装完成后,点击 Keil Assitant 的设置,点击扩展设置,在这里需要填写你已经安装好的 Keil 程序的安装路径,因为编译程序其实是 vscode 调用 Keil 的编译功能实现在 VSCOE 上编译工程。

  • 首先在桌面上右键keil,然后打开文件所在位置,找到uv4.exe的文件

  • 接着复制这个地址粘贴到vscode的扩展插件中。

  • 此时keil扩展就完成配置了。

2. 测试打开工程

  • 首先点击左边的资源管理器(Ctrl+shift+E)
  • 在打开的资源管理器中可以看到**KEIL UVISION PROJECT,**并且在右边有一个黄色和绿色的加号,点击这个加号,然后就可以像keil mdk一样,打开工程文件
  • 打开工程文件之后,可以做一个测试,用vscode打开main.c, 接着用keil也打开main.c,在vscode中修改代码后并保存,接着打开keil,会弹出下面的提示框,点击Yes to All,keil即可更新vscode中修改后的代码。

3. 测试编译工程

完成上面的配置和测试后,可以连接单片机,这时在vscode的资源管理器中,可以看到下面的状态。上面有一个打开的工程文件,用于修改代码,在最下面的**KEIL UVISION PROJECT中,**点击Project,在Target的右边可以看到和keil中一样的编译和下载按钮,也就是说除了对于单片机或者基础文件的配置以及设置需要在keil中操作修改,对于代码的修改、编译和下载均可以用vscode实现。

  • 如果vscode出现红色波浪线表示不认识某些库的内容,可以手动include库来解决问题。

  • 如果出现中文乱码,参考下面这篇文章解决。

VScode中文注释乱码的四种解决方案

相关推荐
m0_7471245315 分钟前
单片机 VSCode 开发环境搭建
vscode·单片机·嵌入式硬件
嵌入式小站22 分钟前
STM32 零基础可移植教程 21:1602A 并口 4 位模式,先显示 Hello
stm32·单片机·嵌入式硬件
knighthood200136 分钟前
vscode扩展中vscode版本号该如何填写?
ide·vscode·编辑器
曼岛_1 小时前
[安卓逆向]在Android Studio中编写SO文件并测试调用 (四)
android·ide·android studio
January12071 小时前
IDEA 快捷键
java·ide·intellij-idea
羊羊一洋1 小时前
GCC __attribute__ 完全指南:从入门到实战
c语言·stm32
有梦想的程序星空4 小时前
【环境配置】IDEA+Scala 项目 JAR 打包异常完整排查指南
java·ide·intellij-idea
m0_377108145 小时前
stm32-mpu6050
stm32·单片机·嵌入式硬件
执念、坚持5 小时前
解决 vscode 中导入 android aosp 源码卡顿问题
android·ide·vscode
bbaydnog5 小时前
STM32调试三板斧:printf重定向、HardFault定位、逻辑分析仪抓波形,从此告别瞎改代码
stm32·嵌入式·调试