搭建Arduino开发环境

2.1

添加ESP8266库

首先从Arduino中文论坛、Arduino官方 下载最新版本的 Arduino IDE 软件并安装。

安装完成以后,进入首选项(Preferences),找到附加开发板管理器地址(Additional Board Manager URLs),并在其后添加如下信息:http://arduino.esp8266.com/stable/package_esp8266com_index.json

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_vscode

国外同学的配置

上面的方法适合在国外的同学使用,在国内的同学就直接下载我下面提供的包直接安装就行了。

https://www.jianguoyun.com/p/Dc1zwEcQq5TaCBjYmrMD

当下载完后,直接双击安装即可。

安装完后,会发现在项目-加载库中多了很多的库,如下图:

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_引脚_02

ESP8266库

也可以发现工具-开发板(xxx)中添加了很多ESP8266硬件,如下图:

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_开发板_03

ESP8266硬件

当做完这一步时,我们就可以开始烧程序了。😊

2.2

烧程序测试

本例让我们成为点灯工程师,点亮第一个灯吧。

我们准备好开发板,通过查看原理图,找到可以被我们点亮的LED灯接的管脚。

我准备的是一块自己设计的开发板,类似于NodeMCU。

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_ide_04

AD模型

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_vscode_05

LED灯原理图

我们可以从图中看到,当GPIO4为低电平时,LED1就会被点亮,知道了点灯的逻辑,我们就开始让灯闪烁吧。(其他板子都类似)

源代码:

void setup() {
   // 将“gpio4”引脚设置为输出状态
  pinMode(4,OUTPUT);
}
void loop() {
    digitalWrite(4, HIGH);   // 熄灭LED
    delay(1000);             // 等待一秒钟
    digitalWrite(4, LOW);    // 通过将引脚电平拉低,点亮LED
    delay(1000);             // 等待一秒钟

效果:

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_visual studio code_06

LED实则是在闪烁

3. 配置VScode Arduino开发环境

3.1

下载Arduino插件

首先从VScode官网上下载软件。

安装完后,就可以安装Arduino插件了,如下图。

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_引脚_07

第三步因为我已经安装过了,所以这里并没有显示install 没有安装的同学直接install就可以了。

3.2

配置Arduino插件

  • 第一步:VScode进行系统参数设置,快捷键Ctrl+, 打开后在搜索框里写入arduino。

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_ide_08

  • 第二步:在配置项中找到Path,随后在输入框中输入自己安装arduino的路径即可。

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_vscode_09

这样设置后,vscode就可以正常运行Arduino了。

3.3

创建Arduino程序

接下来我们拿blink程序来示范一下。

首先用vscode打开自己的arduino目录,然后新建文件夹Blink再新建一个Blink.ino文件。

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_ide_10

首先,我们先点击下面状态栏中的<Select Board Type>选择开发板类型,在这里,因为我们主要学习的是ESP8266,所以我们选择Generic ESP8266 Module.

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_开发板_11

选择好后,我们连接上我们的开发板,并且点击下面状态栏的<Select Serial Port>,找到自己ESP8266的设备端口。

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_vscode_12

接下来就是写代码的时刻了。

源代码:



void setup() {
   // 将“gpio4”引脚设置为输出状态
  pinMode(4,OUTPUT);
}
void loop() {
    digitalWrite(4, HIGH);   // 熄灭LED
    delay(1000);             // 等待一秒钟
    digitalWrite(4, LOW);    // 通过将引脚电平拉低,点亮LED
    delay(1000);             // 等待一秒钟

Q1

为什么出现很多红色波浪线?

当我们同学在写程序的时候会发现编辑框内不但没有代码提示,而且有很多的红色波浪线,会觉得“啊呀,博主是个骗子,明明不能代码提示还搞这么久”。

当然不是啦,我带大家下坑,肯定会带大家一起填坑的。

解决方案:

自己在配置VS Code Arduino开发环境中遇到的问题,类似这种,错误显示未定义标识符。关于VS Code配置Arduino开发环境 网上有需多,我就不在叙述了,我只是记录我自己遇到的问题。主要问题是头文件索引丢失,intellisense不能自动找到需要的头文件路径。需要在用户设置中强制intellisense使用Tag Parser,递归方式检索头文件。

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_visual studio code_13

添加方式方式如下:

首先

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_vscode_14

其次在输入框输入Arduino,检索。

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_ide_15

打开settings.json 配置相关文件:

添加如下所示的2行代码。

“C_Cpp.intelliSenseEngineFallback”: “Disabled”,

“C_Cpp.intelliSenseEngine”: “Tag Parser”,

自己的配置代码如下:

其中 “arduino.path”: “D:\\work\\Arduino”,是自己安装Arduino的路径。



{
    "window.zoomLevel": 0,
    "terminal.integrated.inheritEnv": false,
    "task.autoDetect": "off",
    "arduino.path": "D:\\work\\Arduino",
    "C_Cpp.updateChannel": "Insiders",
    "C_Cpp.intelliSenseEngineFallback": "Disabled",
    "C_Cpp.intelliSenseEngine": "Tag Parser",
    "arduino.additionalUrls": "",
    "workbench.colorTheme": "Monokai"

保存之后,发现未定义标识错误消失了。

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_visual studio code_16

Reference from: 


好的,接下来就是下载程序啦。在下载程序之前需要知道,当GPIO15为低电平启动时,ESP8266才处于下载模式。

所以我这里需要先按住flash按键(将GPIO15电平拉低),再按下RST按键(这样就能让ESP8266处于下载模式)

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_ide_17

进入下载模式后,我们电脑上选择下图框出来的地方。他就开始自动下载了。

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_ide_18

Q2

输出内容出现乱码?

没有问题的同学往下移~

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_引脚_19

解决方案:

1、找到vscode的arduino拓展的安装目录,找到util.js这个文件,以我电脑上的为例,(注意不同电脑下,路径不同,一般是在用户文件夹下,找不到的话就直接用文件管理器搜索):

C:\Users\Administrator\.vscode\extensions\vsciot-vscode.vscode-arduino-0.3.1\out\src\common\util.js

2、找到文件中的215行左右如下代码

if (os.platform() === "win32") {
            try {
                const chcp = childProcess.execSync("chcp.com");
                codepage = chcp.toString().split(":").pop().trim();
            }
            catch (error) {
                outputChannel_1.arduinoChannel.warning(`Defaulting to code page 850 because chcp.com failed.\
                \rEnsure your path includes %SystemRoot%\\system32\r${error.message}`);
                codepage = "850";
            }

3、将上述的代码注释掉


/*
        if (os.platform() === "win32") {
            try {
                const chcp = childProcess.execSync("chcp.com");
                codepage = chcp.toString().split(":").pop().trim();
            }
            catch (error) {
                outputChannel_1.arduinoChannel.warning(`Defaulting to code page 850 because chcp.com failed.\
                \rEnsure your path includes %SystemRoot%\\system32\r${error.message}`);
                codepage = "850";
            }
        }
        */

4、重启Vscode

最终效果:

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_ide_20

Reference from:


解决完乱码问题,我们下载后出现如下图所示的内容,说明下载成功,只需要把ESP8266重启即可(按下RST按钮),或者重新上电。

springboot arduino esp8266 mqtt开源项目 arduino esp8266开发环境搭建_vscode_21

效果:

和之前Arduino IDE下载的程序效果一致。