使用VS Code编译Marlin固件
参考:https://marlinfw.org/docs/basics/install_platformio_vscode.html
前言
在阅读本文之前,您应该已经阅读了使用 PlatformIO 安装 Marlin。
VSCode中的PlatformIO插件:PlatformIO将 VSCode 变成了一个完整的 IDE,用于编译和开发 Marlin。

1.安装
1.1安装VSCode
访问设置 Visual Studio 代码页面,为您的特定平台下载并安装最新的 VSCode。
1.2安装 PlatformIO IDE
前往“获取 PlatformIO IDE ”页面了解如何在 VSCode 中安装 PlatformIO IDE。
(最快的上手方法是安装Auto Build Marlin,PlatformIO 也会随之安装。)


2.在 VSCode / PlatformIO 中打开 Marlin
您可以通过以下几种方式之一在Visual Studio Code中打开 Marlin :
- 将下载的 Marlin Firmware 文件夹拖到Visual Studio Code应用程序图标上,或
- 使用VSCode File菜单中的Open...命令,或
- 打开 PIO Home 选项卡,然后单击“ Open Project ”按钮。
3.设置你的环境
为您的开发板手动设置环境:
打开文件platformio.ini并更改default_envs为您的开发板使用的环境。查看此文件以了解您的芯片的环境名称。例如,LPC1768芯片的环境名称显示为[env:LPC1768]. 省略外包装:[env:____].

当您单击PlatformIO按钮时,您将看到PROJECT TASKS包括Build和Upload。这些按钮将构建和上传您的默认环境。

如果您不想设置,请从PlatformIO Project Tasks 列表default_envs中为您的开发板选择环境。
识别主板环境
主板所需的 PlatformIO 环境在pins.h文件中的主板注释中。在 Marlin 2.0 中,它位于子目录Marlin/src/pins/pins.h中。
例子:
Configuration.h 文件中有#define MOTHERBOARD BOARD_RAMPS_14_EFB
在pins.h文件中搜索RAMPS_14_EFB ,直到出现以下内容:
#elif MB(RAMPS_14_EEB)
#include "pins_RAMPS.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560
注释的第一部分列出了板上使用的 CPU。
env:xxxx 部分是用于此板的 PlatformIO 环境。
4. 启动构建、清理或上传任务
启动任务是通过PlatformIO 的 Project Tasks、底部状态栏图标或Auto Build Options完成的。


使用构建窗口比使用 PlatformIO 安装 Marlin中显示的要好一些。
- 面板可以调整大小。
- 控制台可以通过鼠标滚轮或滚动条滚动。
- 文本可以突出显示并复制到剪贴板。
“firmware.bin”文件
一些较新的板需要将firmware.bin文件复制到板载 SD 卡上,然后您必须重新启动打印机才能完成安装。如果板子已连接并且您的 PC 可以看到 SD 卡,PlatformIO 将尝试自动复制文件,但这可能并不总是有效。在这些情况下,您需要找到firmware.bin文件并将其手动复制到 SD 卡。

使用VS Code编译Marlin固件的更多相关文章
- 转:小白编译openwrt固件教程
原文地址 编译openwrt固件并没有想象的那么复杂,我也是个小白,以下内容是我将网络上的编译教程稍微进行了一下整合.因为我发现很多编译教程没有说明如何更改flash相关配置. 安装ubuntu, ...
- 【转载】在Linux中使用VS Code编译调试C++项目
原文:在Linux中使用VS Code编译调试C++项目 最近项目需求,需要在Linux下开发C++相关项目,经过一番摸索,简单总结了一下如何通过VS Code进行编译调试的一些注意事项. 关于VS ...
- Ubuntu下安装并配置VS Code编译C++
作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7069091.html Ubuntu下安装并配置VS Code编译C++ 安装 ...
- 开发者说 | 使用Visual Studio Code编译、调试Apollo项目
转载地址:https://mp.weixin.qq.com/s?__biz=MzI1NjkxOTMyNQ==&mid=2247484266&idx=1&sn=d6bcd4842 ...
- 机械臂——arduino、marlin固件、printrun软件【转】
最近了解到,在市面上大多数机械臂控制都采用的arduino这个开源硬件来控制的,而我发现既然会单片机,就没有必要采用arduino来控制了,arduino只是一种为了简化编程而开发一种软硬件控制平台, ...
- 使用VS Code编译运行C/C++程序
使用VS Code编译运行C/C++程序 - qq_435248055的博客 - CSDN博客 https://blog.csdn.net/qq_31823267/article/details/78 ...
- Mac系统使用VS Code编译Bootstrap 4
环境: macOS 10.13.6 node.js 8.11.3 sass 1.10.3 bootstrap 4.1.3 vs code 1.25.1 Bootstrap3为我们提供了在线编译工具,可 ...
- debian下编译openwrt固件
参考文章:Ubuntu下编译OpenWRT固件 我买的路由器是RG100A-AA,采用了bcm63xx系列的芯片. 下载openwrt源码: svn co svn://svn.openwrt.org/ ...
- Marlin固件之—:基础入门与測试
一.Marlin的简介 Marlin固件是一个3D打印的开源固件,3D打印固件有很多,Marlin最为健全和强大,当然相对也会复杂一些.使用Gcode控制爱.Gcode是数控机床等工控控制使用范围较广 ...
随机推荐
- Memory Management in Rust
程序在运行时需要请求操作系统分配内存以及释放内存,因此,程序员在编写程序时,需要显式(手动)地编写分配和释放内存的代码,或者隐式(自动,由语言保证)地进行内存管理.对于前者,C/C++ 是代表语言,程 ...
- Solution -「CTSC 2018」「洛谷 P4602」混合果汁
\(\mathcal{Description}\) Link. \(n\) 种果汁,第 \(i\) 种美味度为 \(d_i\),每升价格 \(p_i\),一共 \(l_i\) 升.\(m\) ...
- 我们一起来学Shell - shell的函数
文章目录 定义函数 执行不带参数的函数 执行带参数的函数 函数的执行总结 我们一起来学Shell - 初识shell 我们一起来学Shell - shell的变量 我们一起来学Shell - shel ...
- 通过shell脚本统计elasticsearch indices每天的数量以及大小
前情提要: 最近elasticsearch集群总出问题,之前虽然修复了,现在又出现新的问题,于是PM要求拉取elasticsearch每天建立的索引有多少,索引有多大,需要对机器进行评估 客户现场无法 ...
- NFS共享Nginx网页根目录(自动部署)
IP HOSTNAME SERVICE SYSTEM 192.168.131.132 proxy-nfs nginx+nfs-server CentOS 7.6 192.168.131.131 ngi ...
- 『无为则无心』Python基础 — 44、对文件和文件夹的操作
目录 1.os模块介绍 2.查看os模块相关文档 3.os模块常用方法 (1)文件重命名 (2)删除文件 (3)创建文件夹 (4)删除文件夹 (5)获取当前目录 (6)改变默认目录 (7)获取目录列表 ...
- kali Vmware版root密码设置
kali Vmware版免去了虚拟机的安装麻烦,但是root密码如要设置一下,要不打开root的时候不方便VMware版本的kali下载地址:https://www.offensive-securit ...
- excel制作折线图太麻烦?试试这些折线图在线生成工具
折线图是以折线的上升或下降来表示统计数量的增减变化的统计图,叫作折线统计图.用折线的起伏表示数据的增减变化情况,不仅可以表示数量的多少,而且可以反映数据的增减变化情况.并且折线图也是目前最方便的一种统 ...
- bool? int?等可为空的数值类型的运算 三值逻辑
算术运算:(+,-,*,/)时,只要一个为null,则结果为null. 比较运算符: <.>.<= 和 >=,也是如此.如果一个或全部两个操作数都为 null,则结果为 fal ...
- tf源码中的object_detection_tutorial.ipynb文件
今天看到原来下载的tf源码的目标检测源码中test的代码不知道跑哪儿去了,这里记录一下... Imports import numpy as np import os import six.moves ...