问题标签 [spiffs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
161 浏览

esp32 - Esp32 基于 Arduino SPIFFS 的静态 Web 地址区分大小写

我正在尝试通过 PlatformIO 在 ESP32 上创建一个静态网络服务器。我正在使用 PlatformIO 中内置的“上传文件系统”任务来上传 www 文件夹。然后我用它server.serveStatic("/", SPIFFS, "/www/");来服务页面。问题是 url 区分大小写,我需要它们不区分大小写。

我认为这是由于底层的 SPIFFS 文件系统,为了修复它,我应该以某种方式改变它。

0 投票
1 回答
1629 浏览

file - 删除 SPIFFS (ESP8266/Arduino) 中的行

我正在尝试创建一个函数,该函数将从 ESP8266 上 SPIFFS 中存储的文本文件中删除一行。我试图遵循此处找到的“空间覆盖”方法https://forum.arduino.cc/index.php?topic=344736.msg2380000#msg2380000,但我只是得到了一行空格。

我的理解是它应该如下工作,-代表替换空间。有问题的文件仅\n在行尾。

我实际上最终得到的是以下内容。

文件大小也保持不变。

这是deleteLine我正在使用的功能。

我在这里做傻事吗?

我知道我可以做的是创建一个新文件,在省略行的情况下复制原始文件,但是,我正在处理 2x 个文件,每个文件大约 1MB,并且临时文件需要额外的 1MB 可用空间,这并不理想.

我也对是否有任何方法可以截断文件感兴趣。如果有,我可以遍历文件,替换字符以基本上删除所需的行,然后添加文件结尾字符,或截断以消除文件末尾的垃圾。

0 投票
1 回答
223 浏览

esp8266 - esp8266 1Mbyte (512kb spiffs) 丢失文件

我对 spiffs 和 arduino 有疑问。

我正在使用带有 1mbyte spi 闪存的 ESP07。我正在使用arduino IDE。

我的文件系统中有 16 个文件正在使用“工具 - > ESP8266 草图数据上传”选项进行草图绘制。如果我选择 256kbytes 作为 SPIFFS 大小,一切正常。所有文件都在那里,系统工作正常。

但是,如果我为 SPIFFS 使用 512 KB,则在使用相同的“工具 - > ESP8266 Sketch 数据上传”选项后,只有 8 个文件存在。

我已经使用 arduino IDE“CheckFlashConfig”中包含的演示验证了我的闪存 spi 内存,它是 1mbyte。

我需要使用 512 kb 模型,因为客户可以上传一个对于 256 kb spiffs 模型来说可能太大的文件。

作为奇怪的东西,我选择了 2 兆字节(即使内存是 1 兆字节),分配 1.5 兆字节/512kbspiffs 并且它工作正常(可能是因为最后一位地址被忽略并且它工作超过 1 兆字节,实际上是 512/512)。

我可以选择手动上传所有这些文件,它可能会起作用,但它比只在生产中刻录内存要慢。

它是 SPIFFS 错误吗?arduino 中的 spiffs 有问题,也许我错过了什么?

谢谢。

注意:我使用的是 esp8266 社区版本 2.5.0 包

0 投票
1 回答
1017 浏览

colors - 如何从 ESP8266 Webserver html 页面的颜色选择器 (jscolor) SPIFFS 中获取值

我正在使用来自http://jscolor.com/examples/的 JScolor Picker

需要帮助来提取那些 R、G、B 值并将它们用作 arduino 代码中变量的整数输入。

请用代码指导我如何获取通过 http 传输回 arduino 草图的 R、G 和 B 的更新值。

我正在使用 ESP8266 Webserver 来托管 2 个文件 1) jscolor.js 2) index.html

在此处输入图像描述

index.html 代码

Arduino 代码(托管网页的示例代码):

0 投票
0 回答
893 浏览

esp8266 - 我无法在 ESP8266 的 SPIFFS 中写入/访问文件

我正在尝试将文本文件存储到 SPIFFS 内存中。每当我尝试格式化或将文件写入 SPIFFS 时,都会出现错误。

这是格式化 SPIFFS 的代码。

我确实在其他论坛上在线搜索过有关此错误的信息。我遇到了这个关于错误的 github 讨论。https://github.com/esp8266/Arduino/issues/4061我确实运行了此链接中建议的代码来获取设备 ID。

固件:芯片 ID:000E01E5
核心版本:2_7_0
SDK 版本:2.2.2-dev(38a443e)
引导版本:5
引导模式:1


Flash芯片信息: Flash芯片Id:00146085(例如:Id=001640E0 Manuf=E0,Device=4016(交换字节))
Sketch认为Flash RAM的大小:1.00 MB 基于芯片ID的实际大小:1.00 MB Flash频率:40.00 MHz
闪存写入模式:DIO


文件系统 (SPIFFS):
总 KB:4176892.00 KB 已用 KB:4176892.00 KB 块大小:8192
页面大小:256
最大打开文件数:5 最大路径长度:32

SPIFFS 目录{/}:


CPU频率:80兆赫

###############文件打开失败

在输出中我看到: 文件系统 (SPIFFS): Total KB: 4176892.00 KB Used KB: 4176892.00 KB

我不明白这一点。有人可以帮我理解这一点吗?这样我就可以将文件上传到 SPIFFS?

0 投票
1 回答
1309 浏览

arduino-esp8266 - NodeMCU草图数据(SPIFFS)上传突然失败

突然,尽管草图本身可以正常上传,但草图数据上传(SPIFFS)串行失败。Arduino IDE Tools 中的设置没有改变,串口是一样的。这是尝试的输出(帮助不大):esptool:错误:无法识别的参数:--end SPIFFS 上传失败!”

自从我上次上传 SPIFFS 以来,唯一改变的是我的路由器被重置,它重新编号了 NodeMCU 和客户端 PC 的 IP。可疑的是,接收 NodeMCU 数据的网页现在挂起,但草图或 HTML/Javascript 中没有任何内容具有硬编码的 IP 地址。

为什么这会影响 SPIFF 数据通过串行上传?

0 投票
1 回答
1379 浏览

arduino - Arduino 将值从 file.read() 转换为 const char*

我知道有很多关于变量转换的主题,但是我在不同的论坛上花了 2 多个小时,但我找不到解决问题的方法......

我有一个代码将读取我的 ESP32 上的 SPIFFS 文件并将其写入串行监视器。(这里我们在许多网站上给出的示例代码)

但是现在我怎样才能将值发送file.read()const char*我真的需要这种格式,因为函数将接收值......

我的代码:

结果为:invalid conversion from int to const char*

0 投票
1 回答
2492 浏览

esp8266 - 如何使用 ArduinoJSON 6 从 ESP8266 的 SPIFFS 读取 json 文件?

我目前正在使用 ESP8266 (ESP-12E) 开展一个项目,我需要将信息存储在一个 json 文件中(对我来说,通过 Web 界面访问更方便,比 EEPROM 更容易管理)。

我的问题如下:我使用的是最新版本的 ArduinoJSON (6),但除了在他们的网站上,我没有看到很多示例,并且此代码对我不起作用:

我猜问题是 JsonArray,它是空的!但我的 JsonDocument 不是,因为如果我这样做

我在索引 0 处获得数组的第一个键值(名称)

这是我在 StackOverflow 上的第一篇文章,希望我做得对,在此先感谢您的帮助!

0 投票
1 回答
30 浏览

arm - 带有 32mb IS25LQ032B 设备的嵌入式 ARM 项目上的 SPIFFS

我一直在查看https://github.com/pellepl/spiffs上的 SPIFFS 文件系统项目,它似乎有一个相当大的用户社区。我一直在查看关于集成和配置的 WIKI,这似乎是有据可查的。我没有看到用户组论坛?有吗?

我的问题与闪存设备的实际格式有关,在 WIKI 页面中显示的示例中,我没有关于如何格式化闪存的示例代码。有描述,但没有显示如何使用 API 的示例。

我希望有人可能知道如何使用 API 的示例。任何帮助是极大的赞赏。

0 投票
0 回答
173 浏览

html - 通过 SPIFFS ESP8266 导入 JQuery

我有一个运行良好的工作代码。代码的本质是该人连接到 Wi-Fi 网络,将他转移到 Captive Portal,他在其中输入一些发送到 esp8266 的文本。但是这样不行,因为我想在不连接网络的情况下做这一切,那么从服务器导入JQuery是不合适的,你需要通过文件连接JQuery来做到这一点。因此,为此我将它加载到 esp8266 文件系统中,但我现在找不到有关如何在 html 代码中包含此文件的信息。请告诉我该怎么做?

代码:(关键行突出显示)。