如何构建SPIFFS和LFS文件系统? / local / spiffs; /本地/ lfs

时间:2019-04-05 23:14:23

标签: esp8266 nodemcu

我正在从文档中提供的工具链中构建NodeMCU,我可以使固件正常运行,但是我在/ local / spiffs中包含一个文件作为测试,但是在构建结束时,我得到了一条消息扩散空间不足,建筑被中止...

我只是想知道/ local / spiffs和/ local / lfs是用于什么目的,而不是构建随固件二进制文件一起构建的SPIFFS映像...

如果有人也有关于如何使用LFS文件夹的详细信息,即使是那样使用,也将不胜感激。

提前感谢您的时间,

1 个答案:

答案 0 :(得分:0)

第一个SPIFFS

  • 要构建spiffs文件系统,您需要将文件放置在 local / fs 中 可能是推测。当您执行此操作时,基本制作将创建一个spiffs图像,并将两个* .bin文件放置在 bin / 中。

  • 您还可以使用

    手动构建一个spiffs图片

    tools / spiffsimage / spiffsimage

  • 就Spiffs图像的大小而言,在构建nodemcu时确实需要为图像留出空间。例如,在主nodemcu-firmware目录中使用不带任何选项的make将尝试为32Mb(4MB),8Mb(1MB,例如经常标记为esp-01S或black esp-01)创建图像,最后为4Mb( 512KB)。如果失败,该过程将终止。

  • 您可以针对所需的特定闪存大小进行构建,例如:

    • FLASHSIZE = 32m make <---将仅生成4MB的闪存图像
    • FLASHSIZE = 8m make <---用于带有1MB闪存的黑色esp-01s。

现在是LFS图像

  • 在主 nodemcu-firmware 目录中使用通用 make 时,您需要首先编辑文件 app / include / user_config.h 并取消注释这两个LFS命令。您应该根据需要设置大小-对我来说,这通常意味着64KB,因为可以在该空间中存储很多lua代码。

  • 如果要手动构建lfs,则需要一个目录来放置文件。在该目录中,执行以下命令:

    luac.cross -o lfs.img -f * .lua

这会将您的文件编译为文件lfs.img。

  • 如果您使用的是LFS,则应阅读 docs / getting-started.md ,其中包含有关lfs的一组初始文件以及有关使用luac.cross的信息,非常有用,如下所示以上。您当然已经看过 docs / lfs.md

推荐

一个快速的建议是使用以下过程:

  1. 选择一个闪存大小作为目标,例如32Mb(4MB)
  2. 取消注释app / include / user_config.h中的LFS行并调整大小
  3. 创建一个目录,例如local / lfs,然后将入门lfs文件放入其中。
  4. 在本地/ lfs中,执行luac.cross -o lfs.img * .lua
  5. 将lfs.img移​​动或复制到local / fs(仅注意 fs )以制作图像。
  6. 将建议的init.lua放入local / fs,并根据需要进行更改。
  7. 最后将所需的任何其他* .lua或LC(已编译)文件放入本地文件/ fs
  8. 在TOP_DIR(nodemcu-固件)中执行: FLASHSIZE = 4m make
  9. 检出 bin /
  10. 中的文件