ESP8266 содержит флэш-файловую систему с последовательным периферийным интерфейсом (SPIFFS). SPIFFS – это легкая файловая система, созданная для микроконтроллеров с флеш-памятью. В этой статье будет показано, как легко загружать файлы в файловую систему ESP8266 с помощью плагина для Arduino IDE.
SPIFFS позволяет получить доступ к флэш-памяти, как в обычной файловой системе на вашем компьютере, но проще и более ограниченно. Вы можете читать, писать, закрывать и удалять файлы. SPIFFS не поддерживает каталоги, поэтому все сохраняется на плоской структуре.
Использование SPIFFS с ESP8266 особенно полезно для того, чтобы:
- Создавать конфигурационные файлы с настройками;
- Сохранять данные постоянно;
- Создавать файлы для сохранения небольших объемов данных вместо использования карты microSD;
- Сохранять файлы HTML и CSS для создания веб-сервера;
- Сохранять изображения, рисунки и значки.
В большинстве наших проектов веб-серверов пишут HTML-код для веб-сервера в виде строки непосредственно в скетче Arduino. С помощью SPIFFS вы можете писать HTML и CSS в отдельных файлах и сохранять их в файловой системе ESP8266.
Вы, конечно, можете создавать, сохранять и записывать файлы в файловую систему ESP8266, написав код самостоятельно в Arduino IDE. Это не очень полезно, потому что вам придется вводить содержимое ваших файлов в скетч Arduino. К счастью, есть плагин для Arduino IDE, который позволяет загружать файлы прямо в файловую систему ESP8266 из папки на вашем компьютере. Это позволяет легко и просто работать с файлами. Давайте установим это.
Во-первых, убедитесь, что у вас установлена последняя версия Arduino IDE, а также есть дополнение ESP8266 для Arduino IDE. После этого нужно установить загрузчик файловой системы. Перейдите на страницу релизов этого загрузчика (https://github.com/esp8266/arduino-esp8266fs-plugin/releases) и щелкните на файл ESP8266FS-X.zip для загрузки.
Перейдите в каталог Arduino IDE и откройте папку Tools.
Разархивируйте загруженную папку .zip в папку Tools.
Наконец, перезапустите вашу Arduino IDE. Чтобы проверить, был ли плагин успешно установлен, откройте Arduino IDE и выберите свою плату ESP8266. В меню Tools убедитесь, что у вас есть опция ESP8266 Sketch Data Upload.
Для загрузки файлов в файловую систему ESP8266 следуйте следующей инструкции. Во-первых, Создайте скетч Arduino и сохраните его. В демонстрационных целях вы можете сохранить пустой скетч. Затем откройте папку со скетчами.
Внутри этой папки создайте новую папку с именем data.
Внутри этой папки вы должны поместить файлы, которые вы хотите сохранить, в файловую систему ESP8266. В качестве примера создайте файл .txt с текстом с именем test_example.
В Arduino IDE в меню Tools выберите нужный размер SPIFFS (это будет зависеть от размера ваших файлов).
Затем, чтобы загрузить файлы, в Arduino IDE вам просто нужно перейти в Tools – ESP8266 Sketch Data Upload.
Вы должны получить подобное сообщение в окне отладки о том, что файлы были успешно загружены в файловую систему ESP8266.
Теперь давайте просто проверим, действительно ли файл был сохранен в файловой системе ESP8266. Просто загрузите следующий код в ESP8266.
#include "FS.h"
void setup() {
Serial.begin(115200);
if(!SPIFFS.begin()){
Serial.println("An Error has occurred while mounting SPIFFS");
return;
}
File file = SPIFFS.open("/test_example.txt", "r");
if(!file){
Serial.println("Failed to open file for reading");
return;
}
Serial.println();
Serial.println("File Content:");
while(file.available()){
Serial.write(file.read());
}
file.close();
}
void loop() {
}
После загрузки откройте последовательный монитор со скоростью 115200 бод. Нажмите кнопку сброса «RST» на плате ESP8266. В итоге должно напечататься содержимое вашего файла .txt.
Таким образом, вы успешно загрузили файлы в файловую систему ESP8266 с помощью плагина.
© digitrode.ru