ESP8266有两种闪存文件系统可以使用,分别是:SPIFFS 和 LittleFS。
SPIFFS 目前已经弃用,不再维护。可能会在不久的将来从 ESP8266内核中删除。建议改用 LittleFS来处理需求。
那么,在PlatformIO中如何来使用LittleFS呢?可以从参考本篇学习笔记。
在本篇学习笔记中,我们将使用LittleFS把一个名为“index.html”的文件上传到ESP8266的FLASH中去,并从中读取内容进行展示。
第一步:在platformio.ini中添加一行如下的内容:“board_build.filesystem = littlefs”。
第二步:在工程的根目录下创建一个名为:“data”的文件夹,与src文件夹处于同一级。
第三步:在刚刚创建的data文件夹中新建一个文件,名为:“index.html”,文件的内容如下:
<html>
<head>
<title>这里是网页标题</title>
</head>
<body> 简单网页 </body>
</html>
第四步:上传文件到ESP8266上。
第五步:回到src\main.cpp文件中,将原先的所有内容全部删除,并替换成以下代码:
#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("/index.html", "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() {
}
第六步:编译新代码并上传程序到ESP8266开发板中去。
第七步:打开串口监视器查看内容。按下ESP8266开发板上的复位按钮,可以看到每按一下串口监视器中就输出了刚才的“index.html”文件的内容。说明刚才的文件已经成功上传到ESP8266的FLASH中去了。