赞
踩
了解如何使用带有 PlatformIO IDE 扩展的 VS Code 将文件上传到 ESP8266 NodeMCU 板文件系统 (LittleFS)(快速而简单)。将文件系统与 ESP8266 一起使用有助于保存 HTML、CSS 和 JavaScript 文件以构建 Web 服务器,而不必在 Arduino 草图中编写所有内容。
您可以将两种文件系统用于板载 ESP8266 闪存:SPIFFS 和 LittleFS。
SPIFFS 和 LittleFS 让您可以像在计算机中的普通文件系统中一样访问闪存,但更简单且更受限制。您可以读取、写入、关闭和删除文件。
SPIFFS:
LittleFS:
有关 SPIFFS 和 LittleFS 的更多信息,请参阅ESP8266 Arduino Core 文档。
SPIFFS 目前已弃用,可能会在 ESP8266内核的未来版本中删除。建议改用 LittleFS。
LittleFS 正在积极开发中,支持目录,并且对于大多数操作来说速度要快很多倍。SPIFFS 使用的方法与 LittleFS 兼容,因此,我们可以简单地使用表达式LittleFS代替SPIFFS将代码从 SPIFFS 转换为 LittleFS 时。
例如,将大多数应用程序从 SPIFFS 转换为 LittleFS 只需更改SPIFFS.begin()到LittleFS.begin()和SPIFFS.open()到LittleFS.open().
将文件系统与ESP8266 板一起使用 特别有用:
您要上传到 ESP8266 文件系统的文件应放在项目文件夹下名为data的文件夹中。为了让您了解一切是如何运作的,我们将上传一个。文本文件带有一些随机文本的文件。您可以上传任何其他文件类型。
SPIFFS 目前已弃用,可能会在 ESP8266 内核的未来版本中删除。建议改用 LittleFS。LittleFS 正在积极开发中,支持目录,并且对于大多数操作来说速度要快很多倍。因此,我们将在本教程中使用 LittleFS。
在 VS Code + PlatformIO 中,上传文件时,我们必须指定我们要使用 LittleFS 文件系统而不是 SPIFFS(默认),因此需要在 ESP826 中添加以下行平台io.ini配置文件。
board_build.filesystem = littlefs
这是一个常见的错误:无法打开端口“COMX”访问被拒绝。
此错误意味着您在 VS Code 或任何其他程序中打开了与您的板的串行连接。关闭任何可能正在使用主板串行端口的程序,并确保关闭 VS Code 中的所有串行连接(单击终端控制台上的回收站图标)。
现在,让我们检查文件是否实际保存到 ESP8266 文件系统中。将以下代码复制到主文件文件并将其上传到你的开发板。
- #include <Arduino.h>
- #include "LittleFS.h"
-
- void setup() {
- Serial.begin(9600);
-
- if(!LittleFS.begin()){
- Serial.println("An Error has occurred while mounting LittleFS");
- return;
- }
-
- File file = LittleFS.open("/text.txt", "r");
- if(!file){
- Serial.println("Failed to open file for reading");
- return;
- }
-
- Serial.println("File Content:");
- while(file.available()){
- Serial.write(file.read());
- }
- file.close();
- }
-
- void loop() {
-
- }

您可能需要根据文件名更改以下行。
File file = LittleFS.open("/text.txt");
打开串行监视器,它应该打印文件的内容。
您已使用 VS Code + PlatformIO 成功将文件上传到 ESP8266 文件系统 (LittleFS)。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。