VsCode搭建ESP8266开发环境

封面

tl;dr

哼哼啊啊啊啊,又要回去折腾嵌入式了。。。大一暑假决定彻底转反恐精英CS的我几乎没碰过嵌入式的东西了,但是出于学校的自动化专业选题原因,而且不会Arduino编程也说不过去,这次毕设决定使用esp8266去做。
写这篇文章,纯粹是为了记录一下环境的搭建过程,方便以后环境炸了重新安装

安装Arduino IDE

正准备安装IDE,打开Arduino官网,发现官方在推荐我们尝试2.0IDE。抱着试一试的心态,我下载了个compressed version
一解压,照着1.0版的操作,创建portable文件夹试图绿色版运行。结果不行!它还是往我电脑里写东西了….这可怎么办?上Arduino论坛上查看,翻到这么一个帖子: Arduino IDE 2.0 Portable提到了GitHub上的这个issue#122

The IDE installation and dependencies are stored in multiple separate places on the user’s computer:

  • Application folder (e.g., C:\Program Files\Arduino IDE\)
  • Configuration folder (e.g., C:\Users\<username>\.arduinoIDE\)
  • Data folder (e.g., C:\Users\<username>\AppData\Local\Arduino15\)
  • Sketchbook folder (e.g., C:\Users\<username>\Documents\Arduino\)

我去验证了一下,这些文件确实存在,这证明了Arduino的2.0 IDE确实是个非绿色版的
怎么办呢?那当然是换1.x的最后一个版本1.8.19啦!草(一种植物

回到官网,下载1.8.19compressed version,解压到我的软件安装目录,根据官方的这篇教程,创建portable文件夹,完成!

搭建ESP8266开发环境

在进行一切工作之前,请先安装你的开发板串口芯片的驱动!我的是CH340

*第一步,添加附加开发板管理器网址
打开Arduino IDE - 左上角文件 - 首选项 - 附加开发板管理网址,这里填入http://arduino.esp8266.com/stable/package_esp8266com_index.json,然后确定,回到主界面。

第二步:添加到开发板管理器
打开Arduino IDE - 顶上的工具 - 开发板:"xxxx" - 开发板管理器 - 等待开发板定义下载完成 - 搜索8266,找到esp8266 by ESP8266 Community的选项,点击安装。

第三步:添加库
打开Arduino IDE - 顶上的工具 - 管理库 - 等待更新已安装库列表完成 - 搜索8266,找到Arduino Uno WiFi Dev Ed Library by Arduino的选项,点击安装。

第四步:选择开发板
打开Arduino IDE - 顶上的工具 - 开发板:"xxx" - NodeMCU 1.0 (ESP-12E Module)

此时,我们就可以使用巨丑无比的Arduino IDE进行ESP8266开发啦!

编写Hello World程序测试环境搭建结果
新建工程,保存到你的工程文件夹,输入以下C艹 C++代码,插入你的ESP8266,并编译上传:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// LED 一秒闪一次,并往串口一秒钟输出一次Hello World

// 引入ESP8266库
#include <ESP8266WiFi.h>

// 定义LED引脚
#define LED_PIN D1

void setup() {
// 初始化串口通信
Serial.begin(115200);

// 初始化LED引脚
pinMode(LED_PIN, OUTPUT);
}

void loop() {
// LED闪烁
digitalWrite(LED_PIN, HIGH); // 点亮LED
delay(500); // 等待0.5秒
digitalWrite(LED_PIN, LOW); // 熄灭LED
delay(500); // 等待0.5秒

// 每隔一秒向串口打印消息
Serial.println("Hello, World!");
delay(1000); // 等待1秒
}

上传完成后,打开工具 - 串口监视器,看看是否达到了预期效果?

原版Arduino IDE排错

终端这样报错A fatal esptool.py error occurred: Cannot configure port, something went wrong. Original message: PermissionError(13, '����ϵͳ�ϵ��豸û�з������á�', None, 31)Serial port COM5怎么办?
这是没有成功打开串口。

进入Windows设备管理器,展开端口 (COM 和 LPT)并查看是否出现了USB-SERIAL CH340 (COM114514)

这里114514端口号,即使是同一台电脑在不同时刻插上开发板,数字也会不一样。

如果没有出现,则是驱动没打上,重新安装CH340驱动即可。
如果出现了,那么回到Arduino IDE,找到工具 - 端口,选择你在设备管理器里看到的端口,比如我是COM114514,然后重试。
如果出现了,端口也选对了,还是失败,那么检查一下有没有别的软件占用了串口调试的端口。

如果上面的问题都排查了,还是失败,那么恭喜你和我遇到了一样的问题。下面是我的解决方法:
打开Dism ++,启用专家模式,进入控制面板 - 驱动管理,把端口(COM和LPT)通用串行总线设备下所有的驱动都展开,找到带有Arduino字样的,勾选,然后点击底下的删除驱动,等完成后重新安装CH340驱动 (具体取决于你的开发板串口芯片型号,我的是CH340 即可解决。

VScode环境搭建(Arduino插件)

下载arduino插件。

添加附加开发板管理网址
打开的设置,搜索Arduino。找到 Arduino: Path 设置项,填入你的Arduino IDE安装目录;找到Arduino: Board Manager URLs设置项,在其中添加 ESP8266 开发工具的 URL:

1
https://arduino.esp8266.com/stable/package_esp8266com_index.json

添加开发板
按下F1打开命令面板,输入Arduino: Board Manager,搜索ESP8266,安装esp8266 by ESP8266 Community

添加库
按下F1打开命令面板,输入Arduino: Library Manager,搜索8266,安装Arduino Uno WiFi Dev Ed Library by Arduino

选择开发板型号
按下F1打开命令面板,输入Arduino: Board Config,在Select Board处选择NodeMCU 1.0 (ESP-12E Module)

编写和上传代码
创建一个新的Arduino文件(.ino),编写你的ESP8266代码。点击上传按钮或使用快捷键(Ctrl+Alt+U)将代码上传到ESP8266开发板上。

点击屏幕下面的COM,找到你的8266所在的端口,然后就可以打开串口了。

VSCode环境搭建(PlatformIO IDE插件)⭐推荐

环境搭建
先安装PlatformIO IDE插件。
点击vscode最底下的一栏中的房子图标,鼠标放上去会提示是PlatformIO: Home,点开它,进入PIO Home
点击左边的Platforms - Embedded - 搜索ESP - 安装Espressif 8266

创建工程
进入PIO Home,在Quick Access下面点击New ProjectBoard选择Espressif 8266分类下的NodeMCU 1.0 (ESP-12E Module)Framework选择ArduinoLocation不要勾选Use default location这样一会儿可以选择保存路径。

src/main.cpp中会自动创建模板代码,这里我们需要包含esp8266的头文件才能进行开发。举个例子,该代码会创建一个叫test的热点,密码88888888,并在创建好后往串口里打印ssid和网关IP地址:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <Arduino.h>
#include <ESP8266WiFi.h>

const char *ssid = "test";
const char *password = "88888888";

void setup() {
Serial.begin(9600);
WiFi.softAP(ssid,password);
Serial.print("AP:");
Serial.print(ssid);
Serial.print("IP:");
Serial.println(WiFi.softAPIP());
}

void loop() {

}

如何快速格式化代码
vscode菜单栏中点击View - Command Palette,输入Format Document看看它对应的快捷键是哪个,按它的提示去按就行。我的电脑上是Shift Alt F

如何快速展开/收起Problems栏
Ctrl Shift M


VsCode搭建ESP8266开发环境
http://blog.coolenoch.ink/2024/03/16/12-VsCode搭建ESP8266开发环境-240316/
作者
CoolestEnoch
发布于
2024年3月16日
许可协议