VsCode搭建ESP8266开发环境
tl;dr
哼哼啊啊啊啊,又要回去折腾嵌入式了。。。大一暑假决定淦彻底转反恐精英CS的我几乎没碰过嵌入式的东西了,但是出于学校的自动化专业选题原因,而且不会Arduino编程也说不过去,这次毕设决定使用esp8266
去做。
写这篇文章,纯粹是为了记录一下环境的搭建过程,方便以后环境炸了重新安装。
安装Arduino IDE
正准备安装IDE,打开Arduino
官网,发现官方在推荐我们尝试2.0
的IDE
。抱着试一试的心态,我下载了个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.19
的compressed 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 |
|
上传完成后,打开工具
- 串口监视器
,看看是否达到了预期效果?
原版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 |
|
添加开发板
按下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 Project
,Board
选择Espressif 8266
分类下的NodeMCU 1.0 (ESP-12E Module)
,Framework
选择Arduino
,Location
不要勾选Use default location
这样一会儿可以选择保存路径。
在src/main.cpp
中会自动创建模板代码,这里我们需要包含esp8266
的头文件才能进行开发。举个例子,该代码会创建一个叫test
的热点,密码88888888
,并在创建好后往串口里打印ssid
和网关IP地址:
1 |
|
如何快速格式化代码
在vscode
菜单栏中点击View
- Command Palette
,输入Format Document
看看它对应的快捷键是哪个,按它的提示去按就行。我的电脑上是Shift Alt F
如何快速展开/收起Problems栏Ctrl Shift M