Файловая система SPIFFS в ESP8266 и ESP32

.Файловая система SPIFFS в ESP8266 и ESP32

У микроконтроллеров ESP8266 и ESP32 есть своя файловая система SPIFFS (Serial Peripheral Interface Flash File System). Из названия понятно, что она работает по шине SPI.

SPIFFS аналогична файловой системе компьютера , но имеет ряд ограничений. Она позволяет создавать, редактировать файлы в тестовых форматах.
Загрузить можно файлы в формате: "txt", "htm", "html", "js", "json", "c", "h", "cpp", "css", "xml" и другие текстовые документы. Данные документы можно без труда отредактировать удалить. Также можно загрузить графические элементы в формате: "png", "jpg", "gif", "ico" и пр. Что позволяет реализовать веб-интерфейс для управления ESP8266 или ESP32.
В интернет источниках не раз встречал информацию о том, что нельзя создавать директории в файловой системе SPIFFS. Но в уроках Сергея Третьякова по созданию web-интерфейса, используются и папки. Возможно, что ситуация изменилась и создания директорий доработали.
Кстати у Сергея достаточно понятные и доступные видео уроки по созданию web-интерфейся для управления проектом на ESP8266. При желании можно доработать данные примеры и реализовать, что-то подобное на ESP32.

Создать текстовый документ можно напрямую в коде. Но вот для загрузки картинки понадобиться специальный плагин, который устанавливается в Arduino IDE. Для каждой версии ESP свой плагин.

Для установки в папке программы Arduino создайте папку tools. Если ее нет и скопируйте туда содержимое вот из этого архива.
Должно получиться вот так.

Arduino создайте папку tools

Одна папка для работы с файловой системой ESP32, вторая с ESP8266 .
Затем необходимо перезагружаем Arduino IDE.

перезагружаем Arduino IDE

После чего перейдем в пункт меню Инструменты. И у нас должны появиться еще 2 пункта меню. Если у вас нет данных пунктов в меню, попробуйте обновить Arduino IDE до более новой версии.

папке со скетчем создать папку data

Чтобы загрузить файлы, необходимо в папке со скетчем создать папку data. И поместить туда нужные файлы.
Я бы порекомендовал взять пример для проверки вот от сюда. Здесь реализована работа с файловой системой и плюс визуальный редактор.
Причем скетч адоптирован для обоих плат и для 32 и для 8266.

Скачиваем архив. Заходим в папку FSBrowser. Открываем файл FSBrowser.ino. Ставим все необходимые библиотеки. Они ставятся из менеджера библиотек.
Прошиваем плату и загружаем файлы для этого наживаем на загрузчик.

Прошиваем плату и загружаем файлы для этого наживаем на загрузчик.

Внимание! При прошивке и загрузке файлов на некоторых версиях ESP32 нужно нажимать кнопку boot, которая расположена на плате. Это нужно сделать когда начинается прошивка. Удерживаем ее около 3 сек. После чего побегут проценты загрузки.

После удачной загрузки заходим в монитор порта и смотри наш Ip адрес.

заходим в монитор порта

В браузере переходим по адресу http://<ваш_IP>/edit И видим редактор и список всех загруженных файлов.

едактор и список всех загруженных файлов

Ссылка http://esp8266fs.local/edit не работает. Понятно что проблема с DNS, но пока не проверял по какой причине. Если есть предложения как решить данную задачу пишите, буду благодарен.
В данном редакторе можно создавать и редактировать текстовые документы. Загружать напрямую на ESP32 или ESP8266 файлы .

Возможности данного редактора можно расширить. Если кому интересно пишите на форум. Подскажу или напишу статью, что нужно для этого сделать.

Визуальный редактор неоглядно показывает роботу файловой системы. И упрощает работу с ними.


Не забывайте подписываться на канал Youtube и вступайте в группы в Вконтакте и Facebook.

Всем Пока-Пока. И до встречи в следующем проекте.

Понравилась статья? Поделитесь ею с друзьями:

Файлы для скачивания

FSBrowser FSBrowser.zip16 Kb 1728 Скачать
tools tools.zip13 Kb 1462 Скачать
Вернуться в раздел: Статьи об Ардуино Дата публикации 27 августа , 2019

Комментарии

Ваше Имя*
Войдите или Зарегистрируйтесь И Вы сможете общаться на форуме и оставлять комментарии без капчи.

igor2015
#2 igor2015 (12 мая, 2020 в 20:34)
Загрузил скетч в ESP32. В редакторе, в левой панеле,  не показывает список файлов. Запрос http://192.168.1.103/list?dir=/  не получает ответ от ESP32! Хотя если открыть этот запрос в отдельном окне - приходит ответ JSON! Не подскажите в чем проблема?
https://yadi.sk/i/dajwr0lNdiu3TA
Не знаю почему но нормально работает только в Firefox!!! ( В Google Crome и в Opera не отображается список файлов в левой панели!!!)

Cлучайные товары

Посмотреть товар в Магазине »

Мы в соц сетях

Подпишись на канал Telegram

Portal-PK (Портал ПК) © 2015 - 2024
Разработка проектов
AT Block
DWIN Box