第一次在知乎写博客,献丑了。

VS code写stm32
 

今天实在觉得KEIL太丑,突然想到VS code也可以实现STM32代码的编写,遂决定写一个文章,把VScode变成一个STM32的IDE,实现KEIL的绝大部分功能,实现编译,链接,下载,调试为一体的IDE。参考了如下开源项目,这个项目用起来挺舒服的,自己也不会去写这些,这个还支持keil项目的导入。

基于CUBEMX构建VS code得IDE

先安装VS code

先安装python,这个...我就不写教程了,网上多的很,但我还是推荐一波吧.

下载 GNU Eclipse tools:

有点同学可能由于速度或国内的原因无法下载,请自行解决。百度云有点恶心,所以就不传了。

等待的时候,我们去VS code的插件市场安装一下Cortex-Debug插件和python插件 如下图

然后继续下载CPU特定的SVD文件 在这里下载。 不用全部下,你也不可能全部下下来,笑:)。 只需下载你需要的板子型号所对应的开发包即可。如

然后我们把上面下的三个文件和刚刚下载的SVD文件放在一个你熟悉的文件夹下,这个文件夹一定自己要找得到,不过我建议如下目录:%userprofile%\ AppData \ Roaming \ GNU MCU Eclipse,然后解压,我建议把解压出来的文件放在同一个文件夹下。 如图 ,忽略那个压缩包。

最后,下载STM32 cubemx,安装。

到这里,就可以开始安装了

打开STM32CUBEMX,创建一个工程,可以看我下边的图

创建一个新工程

挑选好自己的开发板 之后,根据自己的需要初始化,然后我们改下设置

然后生成代码

然后用VS code打开工程生成的代码的文件夹

然后,我们下载这里的所有文件,放入CUBEMx生成代码的目录,也就是VS code现在打开的目录,如图

这是我的完成版 然后用python运行ideScripts的update.py 按如图所示填入

然后,如图所示,即为成功

这里有一个问题,需要注意,所有路径不要包含空格,不然无法构建。 然后,打开main.c,按Ctrl+P,输入>Run,可见运行任务,然后build,测试即可。 至此,我们完成了基本构建,如果,还有别的需求,请自行查阅资料,或在评论区询问。

参考资料:https://github.com/damogranlabs/VS-Code-STM32-IDE

VS code写stm32的更多相关文章

  1. 用VS Code写C#

    目录 前言 下载SDK 安装C#支持 快速创建C#控制台 格式化代码 launch:launch.json must be configured. change 'program' to the pa ...

  2. VS Code 搭建stm32开发环境

    MCU免费开发环境 一般芯片厂家会提供各种开发IDE方案,通常其中就包括其自家的集成IDE,如: 意法半导体 STM32CubeIDE NXP Codewarrior TI CCS 另外也可以用ecl ...

  3. 用VS Code写Python程序

    安装python 常见的Linux发行版本中已经安装了python,而且可能不止一个版本,以Ubuntu14.04为例,预装的python有2个版本,分别是2.7.6和3.4.3,python2和py ...

  4. 一步步写STM32 OS【三】PendSV与堆栈操作

    一.什么是PendSV PendSV是可悬起异常,如果我们把它配置最低优先级,那么如果同时有多个异常被触发,它会在其他异常执行完毕后再执行,而且任何异常都可以中断它.更详细的内容在<Cortex ...

  5. 一步步写STM32 OS【一】 序言

    一直想写个类似uCOS的OS,近段时间考研复习之余忙里偷闲,总算有点成果了.言归正传,我觉得OS最难的部分首先便是上下文切换的问题,他和MCU的架构有关,所以对于不同的MCU,这部分需要移植.一旦这个 ...

  6. 一步步写STM32 OS【四】OS基本框架

    一.上篇回顾 上一篇文章中,我们完成了两个任务使用PendSV实现了互相切换的功能,下面我们接着其思路往下做.这次我们完成OS基本框架,即实现一个非抢占式(已经调度的进程执行完成,然后根据优先级调度等 ...

  7. Visual Studio Code 写Python 代码

    最近在博客园新闻里面看到微软发布的Visual Studio Code 挺好用的,现在在学习Python,查看官网发布的VSCode 是支持Python代码,自己试着安装用一下,下面是我的安装以及配置 ...

  8. 用Visual Studio Code写Node.j

    介绍 vsc的宣传语是: 一个运行于 Mac OS X.Windows和 Linux 之上的,针对于编写现代 Web 和云应用的跨平台源代码编辑器. 按它说的,vsc特别适合来作为前端开发编辑器. 内 ...

  9. visual studio code 写c++代码

    首先安装c++插件: 安装 LLVM clang 下载地址:http://releases.llvm.org/ 解决方法:点击黄色灯泡 进入 c_cpp_properties.json文件, 在 pa ...

随机推荐

  1. DB2备份恢复schema

    场景:日常中开发同步生成环境或者环境切换都需要进行表结构.存储.数据等等的迁移,本文为表.视图.包.函数.存储等统一备份及恢复的操作. 备份: 登录数据库所在服务器,或者可远程连接需备份数据库的服务器 ...

  2. Python memory error的问题

    前段时间在读取一个文件的过程中,竟然出现了Memory Error!简直让我怀疑自己买了个假电脑,毕竟是8G内存i7处理器,一度怀疑自己装了假的内存条....下面说一下几个解题步骤....一般就是用下 ...

  3. 20.Vue中获取DOM元素和组件

    1.获取DOM元素和组件:this.$refs

  4. Python Multiprocessing 多进程,使用多核CPU计算 并使用tqdm显示进度条

    1.背景   在python运行一些,计算复杂度比较高的函数时,服务器端单核CPU的情况比较耗时,因此需要多CPU使用多进程加快速度 2.函数要求  笔者使用的是:pathos.multiproces ...

  5. IDEA实用教程(五)——配置IDEA的JVM内存值

    ---恢复内容开始--- 四. 配置IDEA的JVM内存值 IDEA默认配置的JVM内存值比较低,如果硬件配置较高,可以修改该设置. 该设置需要在工程界面进行. 该操作仅建议内存8G以上,64位操作系 ...

  6. pypython解构

    *******重点 解构:把线性结构的元素解开,并按顺序的赋给其他变量 左边接纳的要与右边解开的个数一致. lst = [3,5] first,second = lst print(first,sec ...

  7. HDU-1237- 简单计算器--栈的基本应用

    简单计算器 Problem Description 读入一个只包含 +, -, *, / 的非负整数计算表达式,计算该表达式的值.   Input 测试输入包含若干测试用例,每个测试用例占一行,每行不 ...

  8. PL/SQL块与表达式

    一.块(Block) 是PL/SQL的基本执行单元,由定义部分,执行部分(必须)和例外处理部分组成. Declare /*定义部分――定义常量.变量.游标.例外.复杂数据类型*/ Begin /*执行 ...

  9. 7月新的开始 - Axure学习03 - 布尔运算、表单元件

    布尔运算 布尔运算:是一种数字符号化的逻辑推演法.包含联合.相交.相减等 在图形处理中,通过联合.相交.相减等操作使基本的图形组合产生新的形体 操作 准备 蓝色(底部).绿色(顶部) 合并:两个图形合 ...

  10. Python基本的语法知识

    1. 编程语言的介绍 低级语言:机器语言--------计算机内部只能接受二进制代码,故用0或者1表示的指令称为机器指令,全部的机器指令构成了计算机的机器语言. 汇编语言--------实质上跟机器语 ...