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中文注释乱码的四种解决方案

相关推荐
XiHongShi201618 小时前
STM32F407 RTC定时器例程,建议保存
stm32·单片机·学习
优信电子19 小时前
AIT1001 非接触式红外测温模块 STM32 驱动开发实战:从引脚到代码全解析
stm32·嵌入式·温度传感器·红外测温·非接触式测温·ait1001
深圳老胡20 小时前
STM32F407 控制 L6470 步进电机驱动 —— 控制过程简介
笔记·stm32·单片机·嵌入式硬件·代码规范
wuyk55520 小时前
《WiFi 嵌入式物联网开发全套实战》| 第 16 章 ESP32 AP+STA 双模共存原理与工程坑点
网络·stm32·物联网
Brilliantwxx1 天前
【STM32】 SPI Flash 驱动开发实战:阻塞模式驱动 W25Q64(含工程代码)
开发语言·stm32·单片机·嵌入式硬件
2501_915909061 天前
移动端开发工具链怎么组合比较好,iOS、Android、跨端三套配置方案
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
youcans_1 天前
【嵌入式软件AI编程】16. Claude Code 与 VS Code 的协同开发
stm32·mcu·嵌入式·ai编程·claude code
weixin_464078071 天前
ppt转为draw.io方法
编辑器
Zw-awa1 天前
按键接到 STM32 后:GPIO 输入到底读到了什么
stm32
sunoo-2291 天前
【ARM嵌入式学习笔记Day6】一文打通i.MX6ULL时钟体系:PLL/PFD/预分频+滞回比较器全解析
arm开发·笔记·vscode·单片机·imx6ull·汇编语言