# VSCode下配置各种开发环境(1)——VSCode下配置Arduino环境详解

news/2024/7/5 6:05:58

VSCode下配置各种开发环境(1) ——VSCode下配置Arduino环境详解

VScode即Visual Studio Code,作为一个跨平台的编辑器,能够在windows、Linux、IOS等平台上运行,安装相关的插件后就可以让使其变成具有强大的编辑功能和编译功能。 VSCode支持C++、Python、Java、C#、Go等多种语言,功能强大、插件及其丰富且开放。使用着也不断增长,因此非常有必要尝试并做个记录。

1.软件安装:

首先VSCode是个编辑器,更多的是使用它的编辑功能,编译的功能要选用适当的编译器。这里为了方便还是选用arduino的编译器和keil的编译器,那么arduino和keil软件就仍然需要安装,剩下的就是配置相关参数即可。

(1)VScode官方下载地址:https://code.visualstudio.com/Download

(2)arduinoIDE官网下载地址:https://www.arduino.cc/en/Main/Software

(3)keil需要对应的5.25以上版本。

3个软件正常独立安装即可,如果已经安装就不需要重新安装。直接配置VSCode即可。注意每个程序的路径。

2.VScode里配置Arduino

(1)打开VScode,点击左边插件扩展图标,搜索arduino,选择安装插件

在这里插入图片描述

这里有多个arduino的插件,第一个是microsoft提供的,是必须安装的,这个插件提供arduino的基本配置和指令,实现和arduino的链接(通过查看其贡献可以知道这个插件的作用)。

在这里插入图片描述

其它的是两位的第三方提供的,可以装一装体验下。这里第2个是表示能自动识别ino文件和老的ped文件,第三个插件表示可以更换成arduino的主题样式。例如安装第三个插件,VSCode变成这样(下图),完全arduino的风格。不喜欢的话,赶紧卸掉这个插件。

在这里插入图片描述

安装c/c++插件,同上方法,安装

在这里插入图片描述

(2)配置arduino环境

打开文件—>首选项–>设置(或者Ctrl+)

在这里插入图片描述

因为设置项太多,所以过滤下,直选和arduino有关的,因此在弹出的设置里搜索arduino,

顺次填入第三方依赖包的地址:可参考arduino设置里的第三方包的配置方法

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

注意路径,选择自己arduino的安装路径。同样工作区也要按上面的填写。

在这里插入图片描述

(3)建立文件,配置完整的json设置文件

注意,一般配置一次环境后,产生对应的三个json文件后,就希望不需要对每次新建的文件重新进行配置,否则非常麻烦。因此先新建个文件夹,这个路径作为以后写arduino的文件都在此处的路径。

如:先新建一个文件夹e:\ardunio 从VSCODE里打开这个文件夹

在这里插入图片描述

建立一个包含.ino文件的同样名称的文件夹(或者放个现成的),编写最简单的代码,或者copy一段代码

在这里插入图片描述

注意坑点

点击左下的配置图标,然后点击命令面板,或者直接Ctrl+Shift+P,或者点击右下角的状态栏的WIN32。(如果配置过C++/C的环境编译其它C或者C++程序,那么可能会和arduino编译起冲突,那么要单独配置下arduino的C++环境)

在这里插入图片描述

弹出的窗口中选择: C/C++: Edit Configurations (UI)

在这里插入图片描述

弹出的窗口中填写选择如下,注意如果原来用的是WIN32的配置,这里可以增加一个专门为arduino进行的c/c++环境,编译器选择arduino自带的其它的暂时不用填,可以等会通过初始化指令,intellisense会自动配置好其它所需要的项目,如包含的各种头文件。

注意编译器路径一定要正确,路径是arduino的编译器路径

在这里插入图片描述

切换到arduino程序窗口,点击右下角的win32栏,选择arduino。这个确定以后将按照arduino的方式编译。同时也可以看到C_CPP_Properties.json文件生成。

在这里插入图片描述

此时配置arduino.json文件,点击左下的配置图标,然后点击命令面板,或者直接Ctrl+Shift+P。搜索选择命令arduino:initialize

在这里插入图片描述

运行指令后,可以发现资源管理器工作区增加了arduino.json文件。下面的状态条也发生了变化。

在这里插入图片描述

进一步完成arduino的配置:选择状态栏的select programmer 等三个,选择对应的下载器,板子型号,和串口号,除了板子型号,其它根据具体情况选择。

在这里插入图片描述

此时,可以观察到arduino对应的c/c++环境也发生了变化。系统自动配置完成。

在这里插入图片描述

配置下arduino.json文件里的输出文件,尽量放到文件目录下。统一输出地址。添加语句如下:

在这里插入图片描述

运行verify,编译程序
在这里插入图片描述

setting.json文件在配置arduino插件的时候已经配置完成,查看文件或者编辑文件,可以通过上面第(2)步 配置arduino环境

打开文件—>首选项–>设置(或者Ctrl+)方式查看,这个文件最早通过UI已经配置。

在这里插入图片描述

{"arduino.path": "D:\\Program Files (x86)\\Arduino",
  "arduino.logLevel": "info",
  "arduino.allowPDEFiletype": false,
  "arduino.disableTestingOpen": false,
  "arduino.skipHeaderProvider": false,
  "arduino.additionalUrls": [
​    "http://arduino.esp8266.com/stable/package_esp8266com_index.json",
  ],
  "arduino.defaultBaudRate": 115200,
  "arduino.openPDEFiletype": true,
  "files.associations": {
​    "*.ino": "cpp"
  }
}

至此所有配置完成,并能编译下载。注意之后建立文件,可直接在此arduino目录下建立新的文件夹和文件,无需再次配置,如果换其它路径,则需要再次配置。


http://lihuaxi.xjx100.cn/news/67700.html

相关文章

《软件测试》实验 1:开发者测试实验报告

文章目录实验目的实验环境实验内容安装Eclipse测试代码分析和总结实验目的 理解和掌握使用 Eclemma 软件测试工具对 Java 语言编写的程序进行语句覆盖测试。 实验环境 装有 Eclipse 的计算机。 实验内容 安装Eclipse 下载地址 点击 Download Packages 根据操作系统和所…

python专区--异常

目录异常什么是异常Python 中的异常python 中异常演示错误类型捕获try-except 语句带有多个 excepct 的 try 语句捕获未知错误异常参数 eelse 子句finally子句自定义异常抛出异常—raise应用场景抛出异常练习:自定义异常异常 什么是异常 程序在运行时,…

线性回归(公式推导)

线性回归 ​ 线性回归是线性模型的一种典型方法。产品销量预测、岗位薪资预测,都可以用先线性回归来拟合模型。从某种程度上来说,回归分析不再局限于线性回归这一具体模型和算法,更包含了广泛的由自变量到因变量的机器学习建模思想。 原理 …

新开课day12函数进阶作业

写一个匿名函数,判断指定的年是否是闰年 (先直接用普通函数) def fun1(year):if year%100!0 and year%40 or year%4000:return f{year}年是闰年 print(fun1(2000)) #2000年是闰年写一个函数将一个指定的列表中的元素逆序( 如[1, 2, 3] -> [3, 2, 1])(注意:不要使…

什么是DCMM认证?什么是数据管理能力成熟度评估?

GB/T 36073-2018 《数据管理能力成熟度评估模型》(Data Management Capability Maturity Assessment Model,简称:DCMM)是我国数据管理领域首个国家标准。该标准将组织对象的数据管理划分为八大能力域(数据战略、数据治…

无胁科技-TVD每日漏洞情报-2022-9-28

漏洞名称:Rdiffweb 授权问题漏洞 漏洞级别:严重 漏洞编号:CVE-2022-3269;CNNVD-202209-2360 相关涉及:rdiffweb 2.4.7之前版本 漏洞状态:POC 参考链接:https://tvd.wuthreat.com/#/listDetail?TVD_IDTVD-2022-20340 漏洞名称:多个Acer产品缓冲区溢出 漏洞级别:高危 漏洞编号:…

EXPLAIN使用简介

EXPLAIN使用简介EXPLAIN各字段解释idselect_typetabletypepossible_keyskeykey_lenrefrowsextraEXPLAIN各字段解释 id id相同,执行顺序由上到下。id不相同,如果是子查询,id的序号会递增,id值越大优先级越高,越先被执…

19 南京站+div2思维

D. Meta-set 题意:给定一段长为k的数字组合,每个数组的选取为{0,1,2}。找到三个组合满足每位上的k都相同或者都不相同可称为1队,对于5个组合组成的meta-set,要求其中对数要大于等于2. 思路: 1.可发现每两个组合可确定…