ESP32 /ESP8266在VS Code and PlatformIO上传文件系统 (SPIFFS)

ESP32 /ESP8266在VS Code and PlatformIO上传文件系统 (SPIFFS)


学习如何上传文件到ESP32板文件系统(SPIFFS)使用VS Code与PlatformIO IDE扩展(快速和简单)。使用ESP32的文件系统可以保存HTML、CSS和JavaScript文件来构建web服务器,而不必在代码中编写所有内容。

引入SPIFFS

  • ESP32包含spiff (Serial Peripheral Interface Flash File System)文件系统。SPIFFS是一种轻量级的文件系统,为微控制器创建了一个flash芯片,通过SPI总线连接,如ESP32闪存。

  • SPIFFS允许您像在计算机的普通文件系统中那样访问闪存,但更简单和更有限。您可以读取、写入、关闭和删除文件。SPIFFS不支持目录,所以所有内容都保存在扁平结构上。

在ESP32板上使用SPIFFS特别有用:

1.创建配置文件与设置;
2. 永久保存数据;
3. 创建文件来保存少量数据,而不是使用microSD卡;
4. 保存HTML, CSS和JavaScript文件,构建一个web服务器;
5. 保存图像,数字和图标;

上传文件到ESP32 /esp8266 SPIFFS

  1. 在项目的根目录下创建data文件名的文件夹
    在这里插入图片描述

  2. 项目文件夹架构
    在这里插入图片描述

  • 分支展开图
    在这里插入图片描述

编译和上传文件系统

  • 🌿打开工程菜单目录
    在这里插入图片描述

  • 🌿编译文件系统文件为.BIN文件,为上传做准备工作。
    在这里插入图片描述

  • 🌿上传文件系统
    在这里插入图片描述

  • 🌿串口打印文件内容:
    在这里插入图片描述

  • 📚测试工程:

链接:https://pan.baidu.com/s/1jHWQ_FY1aTMiQRHHNFbmrQ 
提取码:pmvn

上传文件系统时,一定要关闭串口调试窗口,否则会上传失败!

在这里插入图片描述

  • 6
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
PlatformIO是一个开源的跨平台的物联网开发环境,支持多种微控制器平台,包括ESP8266。而SPIFFS(SPI Flash File System)是基于SPI Flash的文件系统,通常用于嵌入式设备的存储和管理文件。 在PlatformIO中,可以使用SPIFFS来将文件系统编译为固件,并将其烧录到ESP8266的SPI Flash中。以下是使用PlatformIOSPIFFSESP8266上进行文件系统管理的步骤: 1. 在PlatformIO项目中添加SPIFFS支持。 在platformio.ini文件中添加以下内容: ``` [env:esp8266] platform = espressif8266 board = ... framework = arduino upload_speed = 115200 upload_port = /dev/cu.usbserial-XXXX board_build.flash_mode = dio board_build.spiffs_start = 0x300000 board_build.spiffs_size = 0x100000 board_build.f_cpu = 80000000L ``` 其中,board_build.spiffs_start指定了SPIFFSESP8266的Flash中的起始地址,board_build.spiffs_size指定了SPIFFS的大小。 2. 将文件添加到SPIFFS中。 在PlatformIO项目的src目录下创建一个data目录,并将要添加到SPIFFS中的文件放入该目录中。例如,将一个名为hello.txt的文件添加到SPIFFS中,可以将其放在src/data/hello.txt中。 3. 编译和烧录固件。 在PlatformIO项目的根目录下,运行以下命令: ``` pio run --target uploadfs ``` 这将会编译SPIFFS文件系统并将其烧录到ESP8266的Flash中。 4. 访问SPIFFS中的文件。 在ESP8266的代码中,可以使用SPIFFS API访问SPIFFS中的文件。例如,以下代码将会打开并读取SPIFFS中的hello.txt文件: ``` #include <FS.h> void setup() { Serial.begin(115200); if (!SPIFFS.begin()) { Serial.println("Failed to mount file system"); return; } File file = SPIFFS.open("/hello.txt", "r"); if (!file) { Serial.println("Failed to open file"); return; } while (file.available()) { Serial.write(file.read()); } file.close(); } void loop() { } ``` 以上就是使用PlatformIOSPIFFSESP8266上进行文件系统管理的基本步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值