Esp fat32 что это

Системный раздел (системный раздел EFI или ESP).

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

Системный раздел (системный раздел EFI или ESP).

Компьютер должен содержать на диске один системный раздел. В системах на основе EFI и UEFI этот раздел называется системным разделом EFI или ESP. Этот раздел обычно хранится на основном жестком диске. С системного раздела происходит загрузка компьютера. Минимальный размер этого раздела составляет 100 МБ, и он должен форматироваться с помощью формата файлов FAT32. Этим разделом управляет операционная система, и он не должен содержать никакие другие файлы, включая средства среды восстановления Windows. Cтандартная конфигурация дисков в разметке GPT на UEFI-системе показана на рис. 1.

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

Рис. 1.Пример конфигурации разделов диска на ПК с UEFI.

Раздел EFI (ESP), отформатированный в FAT32, является обязательным для разметки GPT на системах с UEFI. Стандартный размер раздела EFI составляет 100 MB, но на дисках расширенного формата 4K Native (секторы 4KB) он увеличен до 260 MB ввиду ограничений FAT32. Изготовители ПК могут хранить на этом разделе какие-то свои инструменты, поэтому его размер варьируется в зависимости от производителя. В разметке GPT раздел EFI выполняет одну из ролей, которая возложена на раздел System Reserved в разметке MBR. Он содержит хранилище конфигурации загрузки (BCD) и файлы, необходимые для загрузки операционной системы.

Основные п ринципы построения и функционирования файловой системы на основе FAT-32.

1) Каждому элементу таблицы FAT (начиная со второго) соответствует кластер в области данных с таким же номером.

3) Кластер — это непрерывная последовательность секторов (фиксированного размера). Это адресуемая «порция» файла.

— «резервная» область (область резервных секторов);

— область таблиц размещения файлов (FAT1 и FAT2);

— область файлов и каталогов (область данных).

Корневой каталог хранится в области данных как обычный файл и может расширятся по мере необходимости.

Источник

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

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

SPIFFS – (Serial Peripheral Interface Flash File System) файловая система флеш-памяти, подключаемой по последовательному периферийному интерфейсу. Простыми словами: есть микроконтроллер ESP32 (рисунок 1), у него есть встроенная перезаписываемая энергонезависимая NOR-память, в которой хранятся: настройки (Preferences), загрузчик (Bootloader), микропрограмма (скомпилированный скетч), файловая система (SPIFFS) и ещё что-нибудь, типа обновления «по воздуху» (OTA).

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

Рисунок 1. Функциональная блок-схема микроконтроллера ESP32

NOR-память – это такой вид энергонезависимой перезаписываемой памяти, который имеет достаточно высокую скорость считывания, относительно низкую скорость записи и стирания, в сравнении с типом памяти NAND. Встретить NOR-память большого объёма практически невозможно, обычно ограничиваются 128 МБ. В случае с ESP32 – четырьмя.

Давайте поговорим об использовании

К сожалению, из коробки память микроконтроллера не размечена под SPIFFS, для того чтобы разметить, необходимо воспользоваться плагином ESP32FS для среды разработки Arduino IDE.

После того, как плагин скачен – его необходимо установить:

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

Рисунок 2. Меню Инструменты (Tools)

Если хочется комфорта

Если Вы хотите трогать файлы и видеть информацию о свободном пространстве, то скачайте скетч BRIDGE и прошейте им своё устройство.

Так же скачайте и скомпилируйте кроссплатформенный файловый менеджер A-Explorer (рисунок 3). На GitHub бинарные файлы вскоре будут лежать в папке bin.

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

Рисунок 3, a. Файловый менеджер A-Explorer под macOS

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

Рисунок 3, б. Файловый менеджер A-Explorer под Windows

Данный файловый менеджер позволит узнать информацию о свободном пространстве, загружать/выгружать/удалять файлы. Имеется индикация прогресса выполнения операции.

Как видите по рисунку 3 плагин разметил приблизительно 1,38 МБ памяти под SPIFFS.

Кто такой этот BRIDGE?

BRIDGE – это скетч, а прежде всего одноимённая функция, которая работает с файловой системой SPIFFS и A-Explorer является графической оболочкой для неё. Последний отправляет ту или иную команду, а данная функция её обрабатывает на самом устройстве с использованием библиотек FS и SPIFFS. Давайте посмотрим, чего есть интересного в этих библиотеках.

Начнём с рассмотрения публичных методов класса SPIFFS:

Метод bool begin(bool formatOnFail=false, const char * basePath=»/spiffs», uint8_t maxOpenFiles=10). Данный метод пытается инициализировать экземпляр класса. Первым аргументом принимает истину или ложь на тот случай, стоит ли форматировать файловую систему, если файловая система не отформатирована. Второй аргумент принимает путь, где будет располагаться корень файловой системы. Третий аргумент определят количество одновременно открытых файлов. Последние два параметра лучше оставить дефолтными и не менять их. Если файловая система отсутствует (не был использован плагин, приведённый выше). то функцию вернёт ложь.

Метод bool format() проверят отформатирована ли файловая система – возвращает истину, в противном случае – ложь.

Метод size_t totalBytes(). Такой метод возвращает size_t-число общего количества Байт размеченных под файловую систему.

Метод size_t usedBytes(). Этот метод возвращает size_t-число используемых Байт в файловой системе.

Метод void end(). Данный метод производит деинициализацию данного класса. После вызова данного метода другие методы вызывать бессмысленно.

В данном классе всё, ничего особо интересного нет. Давайте перейдём к классу FS и посмотрим, что оттуда нам может пригодиться.

Первое, что бросается в глаза, так это метод-инициализатор класса bool begin(). Данный метод не требует аргументов и вызывать его нет необходимости, т. к. мы будем использовать сразу следующий метод.

Метод File open(const char path, const char mode) и его брат File open(const String& path, const char* mode). Данные методы принимают по два аргумента первый из них символьный и строковый указатель на путь к файлу, а второй режим открытия, который может быть следующей константой:

FILE_READ – открыть только для чтения;

FILE_WRITE – открыть только для записи;

FILE_APPEND – открыть для дозаписи.

После того, как мы открыли файл, теперь можем произвести над ним какие-либо операции.

Да-да, можно взять эту функцию и запустить её в отдельном потоке в любом другом скетче

Спасибо большое за уделённое время! Буду рад, если данная статья принесёт Вам пользу.

Источник

Разбираемся с UEFI и GPT: установка Windows и Kubuntu на один диск

Помните те времена, когда BIOS был 16-битным с адресным пространством в 1 Мб, а вся информация о загрузчиках писалась в MBR? На смену уже давно пришли более гибкие технологии: UEFI (замена BIOS), и GPT (замена MBR).

Предыстория: Понадобилось мне недавно на свой домашний десктоп поставить 2 системы, чтобы разграничить окружение. Kubuntu для разработки на Ruby on Rails (ибо работаю удаленно), и Windows для всяких игрушек в свободное время. Хочу заметить, что несколько лет назад это было достаточно просто: один раздел для винды и один раздел для линукса, загрузчик записывался в MBR. Однако, технологии не стоят на месте, и оказалось, что настройка dual boot’а теперь несколько изменилась.

Итак, начнем.

Терминология

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

Что делаем:

Разбивка диска

Сначала устанавливаем Windows 8, т.к. она автоматически будет использовать GPT.
Разбивка будет выглядеть так (пардон за кривой снимок):

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

Пропустим саму установку Windows, т.к. в ней все стандартно и понятно.

Теперь загрузимся с USB в Kubuntu Live.

Проверим EFI раздел:

Boot0000 — виндовый загрузчик
Boot0001 — дефолтный загрузчик
Boot0003 — флешка с Kubuntu Live
Обратите внимание, что список загрузчиков не привязан к одному физическому диску как в MBR. Он хранится в NVRAM.

Можем также сразу посмотреть, что же в этом разделе, подмонтировав его:

Там окажутся следующие файлы:

Убедились, что все хорошо. Теперь продолжаем разбивку диска (через KDE Partition Manager).

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

Нам осталось только отформатировать раздел для Kubuntu в ext4, и выделить раздел под swap.

Несколько слов про swap. Рекомендуют на swap выделять от SQRT(RAM) до 2xRAM. Т.к. у меня 16 Гб RAM, то по минимуму мне надо 4 Гб свопа. Хотя я с трудом могу представить ситуации, при которых он будет использоваться: десктоп в hibernate я не перевожу, и сильно тяжелых программ, которые жрут больше 16 гигов, не использую.

P.S. При форматировании раздела в swap Partition Manager может выдать ошибки, которые связаны с тем, что Kubuntu автоматически монтирует в себя любой swap раздел, однако на результат эти ошибки не влияют.

Итак, финальная разбивка:

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

Теперь самое главное для правильного dual boot’а. При установке Kubuntu важно выбрать, куда установить загрузчик:

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

Указываем, конечно же на раздел EFI.

После завершения установки Kubuntu, заходим в систему и проверяем, какие файлы появились на efi разделе (монтировать уже не нужно):

Смотрим, как теперь выглядит список загрузчиков:

Вот как это выглядит при загрузке:

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

А еще эти загрузчики доступны сразу из UEFI (в старом BIOS’е такое было бы невозможно — там был выбор только диска, он просто не знал, что такое загрузчики):

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

Ну и напоследок: чтобы dual boot правильно работал, в Windows надо обязательно отключить fast boot. Это такая нехорошая фича, которая может привести к потере данных.

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

При выключении компьютера Windows сохраняет файловую структуру NTFS разделов в файл (видимо, потому что один файл прочитать быстрее, чем сканировать много разных файлов). Если записать файл на NTFS раздел через линукс, и потом загрузиться в Windows, то Windows просто не увидит файл. Источник

Если выключить комп через Windows, и потом попытаться загрузить Linux, то он просто не запустится из-за «ошибки» NTFS. Источник

Источник

ESP32: знакомимся, пишем и запускаем первую прошивку

Всем привет. Несколько дней назад мне достался экземпляр ESP32 Demo Board V2, о чем я сразу радостно заявил у себя на FB. Конечно, ведь получить его сейчас не очень просто: первая партия (штук 600), которая поступила на продажу на Seeed Studio разлетелась за считанные часы!

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

Но как разработчик и hardware интегратор Open-Source библиотеки для Blynk, я часто получаю ранний доступ к различным девайсам. Blynk позволяет быстро прототипировать и строить iOS/Android Apps для интернета вещей, используя drag’n’drop блоки прямо на телефоне.

Плата, которая попала мне в руки, выглядит вот так:

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

ESP32 обещает снова совершить революцию в мире IoT, как в свое время совершил его младший брат ESP8266 (и я искренне надеюсь, что так и будет). Если Вы раньше ничего не слышали о ESP8266 — читайте, например здесь и здесь (ну и гугл).

Что же собой представляет новый ESP32? Даже с первого взгляда понятно, что это очень мощная платформа. Например, Иван Грохотков (разработчик поддержки Arduino для ESP8266) опубликовал фото игры DOOM на ESP32:

Характеристики ESP32

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

Более детальная (и практически полная) информация есть на офф. сайте Espressif Systems. ESP32 будет доступен (как минимум) в нескольких видах:

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

» Модуль AI-Thinker ESP3212, похожий на ESP-12F ($6.9). На ESP3212 нет ножек для SD-card, в отличии от WROOM-32.

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что этоEsp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

Осторожно! Практически все упоминания о ESP32 до 09.2016 на самом деле о ESP31B, что вообще не то же самое.

Настройка среды разработки

На оффсайте сейчас можно найти ссылки на два SDK:

» ESP31_RTOS_SDK — SDK для ESP31B, построена на FreeRTOS.
» Espressif IDF (IoT Development Framework) — Official development framework for ESP32.

Хоть это и не очевидно с описания на сайте, но для релизной версии нам подходит только ESP-IDF. Есть инструкции по установке для linux, windows, macos.

У меня 64-bit Ubuntu Linux. Сначала скачал компилятор:

Пишем Hello World

Espressif подготовил для нас темплейт проект, так что начать очень просто:

Собираем и заливаем на плату

Чтоб собрать проект, сначала надо настроить окружение:

Теперь подключаем плату, включаем питание, и смотрим на каком порту она появилась (у меня это /dev/ttyUSB3). Запускаем конфигуратор:

Esp fat32 что это. Смотреть фото Esp fat32 что это. Смотреть картинку Esp fat32 что это. Картинка про Esp fat32 что это. Фото Esp fat32 что это

Надо зайти в «Serial flasher config» и установить «Default serial port» на порт платы. Можно еще посмотреть другие настройки.
Все, сохраняем и выходим.

Если все хорошо, заливаем на плату:

Подключаемся к плате используя Putty (screen, или другой эмулятор терминала). Передергиваем питание, и видим:

Отладка

Ну что ж, осталось только дождаться наличия ESP32 в магазинах, стабилизации SDK (надеюсь, оно будет изначально намного стабильнее, чем ESP8266). Функция Bluetooth тоже пока не доступна. В скором времени (по моим данным, очень скоро) должны появиться бета-поддержка Arduino IDE и MicroPython, чуть потом Espruino и что-то похожее на NodeMCU.

Источник

ESP32 Storage programming

Понятие хранения в программировании хранения включает в себя методы хранения данных для последующего использования. ESP32 имеет ОЗУ, но когда ESP32 выключен, содержимое ОЗУ теряется. Таким образом, нам нужен механизм, чтобы сделать это хранилище более постоянным. ESP32 обычно имеет доступ к флэш-памяти, которая электрически подключается через специальную шину SPI. Обычно размер флеш-памяти составляет 4 Мбайт. Мы можем получить доступ к флэш-памяти через SPI Flash API.

Содержание

Partition table

Архитектура ESP32 представляет собой концепцию, называемую таблицей разделов, которая в основном представляет собой «карту» или «Макет» того, что содержится во флэш-памяти. Таблица разделов находится в 0x8000 во флэш-памяти и имеет длину 0xC00 байт, что обеспечивает пространство для около 95 отдельных таблиц записей. Каждая запись в таблице имеет структуру записи, которая логически содержит:

Таблица разделов доступна для наших приложений только для чтения и может получена с помощью API ESP-IDF. Таблица записывается во флэш-память при прошивке.

Размер смещения является необязательным. Пустые смещения будут размещены смежно после предыдущих данных. Смещения выравниваются по 64 КБ.

Мы можем преобразовать двоичный файл обратно в CSV, используя:

Таблица разделов, используемая вашим приложением, определяется командой make menuconfig в разделе Partition Table

See also: • Partition API • esp_vfs_fat_spiflash_mount • esp_vfs_fat_register

Non Volatile Storage

Хранилище разделено на именованные области. Для данной именованной области мы можем сохранить и прочитать пару имя / значение в хранилище. Существуют функции getter / setter для большинства типов данных, включая целые числа с знаком и без знака, строки и двоичные данные.

Именованная область открывается для доступа вызовом nvs_open (). Имя области передается как параметр. Нам возвращен логический «дескриптор», который мы впоследствии можем использовать для ссылки на эту область хранения. Как только мы получим дескриптор, мы можем записать и прочитать элементы именованных данных. Элементы данных ссылаются на имя ключа эффективно превращая область хранения в хэш-карту. Если мы изменим данные, выполнив функцию set, это не приведет к тому, что данные будут записаны в энергонезависимое хранилище. Вместо этого хранилище обновляется, когда мы вызываем nvs_commit (). Это зависит от внутренней реализации того, когда выполняется фактическое обновление, и это может произойти до nvs_commit (). Контракт заключается в том, что, когда мы возвращаемся из nvs_commit (), мы уверены, что все обновления обработаны. Когда мы выполнили все наши наборы и получили, мы должны вызвать nvs_close (), чтобы объявить, что мы больше не будем работать с хранилищем в это время, чтобы время выполнения могло очистить любые ресурсы, которые он мог открыть.

Virtual File System

VFS не привязан к какой-либо одной конкретной технологии, а вместо этого является архитектурной абстракцией, используемой для обеспечения интерфейса ввода-вывода для множества различных реализаций.

Ключом к VFS является тип данных, называемый esp_vfs_t. Эта структура содержит следующее:

После заполнения структуры нам необходимо зарегистрировать нашу новую виртуальную файловую систему с вызовом esp_vfs_register ().

Нам нужно знать, что предполагаемый вызывающий файл ввода-вывода ожидает среду, похожую на POSIX.

See also: • esp_vfs_register • Virtual filesystem componen t

VFS Implementations

Поскольку VFS предоставляет архитектурную модель, нам необходимо рассмотреть ее фактические реализации. По состоянию на 2016-11 реализаций пока нет. Первыми ожидаемыми реализациями будут файловые системы, хранящиеся во флэш-памяти. Они будут обеспечивать постоянное хранение данных через API файлов. Первыми кандидатами на реализацию являются FAT и/или SPIFFS.

При работе с файловыми вводами-выводами мы можем использовать механизмы файлов потоков, импортированные через «stdio.h», или использовать ввод / вывод файлов нижнего уровня, импортированных через «fcntl.h».

FATFS File System

Файловая система FatFs представляет собой реализацию файловой системы FAT / exFAT, как показано в более ранних операционных системах ПК, таких как MS-DOS и ранние версии Windows (до FAT32 и NTFS).

Реализация является открытым исходным кодом и поставляется «предварительно перенесенной» в ESP32 как часть дистрибутива ESP-IDF. Отображение ESP-IDF для FATFS сопоставляет файловую систему с функциями posix IO. Это означает, что нам не нужно изучать какие-либо специальные API-интерфейсы для чтения и записи файлов. Мы можем использовать функции open (), close (), read (), write () и другие методы, открытые через виртуальную файловую систему.

Прежде чем мы сможем использовать эти API, нам нужно выполнить предварительную настройку.

По умолчанию имена файлов ограничены старым форматом 8.3 (короткие имена), однако, если мы выберем, мы можем включить длительное управление именами файлов в настройках make menuconfig.

Spiffs File System

Вся файловая система SPIFFS должна быть кратной размеру логического блока. Далее следует размер логической страницы, который является некоторым множителем размера логического блока.

Общий размер ESP32 составляет 64 КБ для размера логического блока и 256 для размера логической страницы.

Когда выполняется вызов API SPIFFS, нулевой или положительный ответ указывает на успех, а значение Building SPIFFs for the ESP32

Под заголовком «»let’s build on each other» была проделана отличная работа портирования SPIFF в ESP32 командой LUA (Jaume Olivé Petrus). Исходный код можно найти на github. Они упаковали его как компонент ESP-IDF.

mkspiffs tool

В дополнение к фантастической библиотеке SPIFF существует также инструмент под названием «mkspiffs», который может принимать структуру каталогов в вашей файловой системе и создавать из него образ SPIFF, который затем может быть загружен во флэш-память для предоставления предварительно загруженных данных.

Можно скачать репозиторий Git для mkspiffs и скомпилировать его. Я не обнаружил проблем и скомпилировал их с первого раза.

В результате получим файл образа:

Когда у нас есть файл образа, чтобы его загрузить выполняем:

See also: • Github: igrr/mkspiffs – The mkspiffs tool.

The ESP File System – EspFs

Часть проекта Github, известного как «Spritetm / libesphttpd», представляет собой модуль под названием «espfs», который является «файловой системой ESP». То, что делает этот модуль, позволяет сделать образ из набора файлов на вашем ПК и сохранить это комбинированное изображение во флэш-памяти. Оттуда предоставляется набор API для чтения и доступа к этим файлам и их содержимому. Крайне важно отметить, что данные в этих файлах доступны только для чтения. API не обновляет содержимое файлов. Доступны только те данные, которые изначально записываются в flash.

В рамках проекта есть утилита под названием «mkespfsimage», которая принимает во вход набор имен файлов и потоков в качестве вывода данных изображения, которые должны быть свернуты. Например:

(Обратите внимание, что проект имеет возможности сжатия, которые я игнорирую на данном этапе).

После того, как данные находятся во флэш-памяти, мы можем затем использовать API-интерфейсы, предоставленные компонентом, для выполнения базового доступа к данным:

Была предпринята попытка портировать код для использования технологий ESP32 и можно найти здесь.

Это добавляет новую функцию:

Эта функция возвращает указатель на весь контент файла, который хранится в buf.

Длина файла сохраняется в len, а также возвращается из функции в целом.

Доступ к данным осуществляется непосредственно из flash без каких-либо копий ОЗУ.

Кроме этого, необходимо выделить память:

Вот пример приложения:

SD, MMC and SDIO interfacing

Secure Digital (SD) является стандартом для съемных носителей. Эти устройства также известны как «флеш-карты» или «SD-карты». Идея состоит в том, что SD-карта содержит данные, которые могут считываться и записываться. Карты SD хранят данные как необработанную память, и обычно создается файловая система, которая живет поверх данных. Обычно используются форматы файловой системы FAT16 и FAT32. Карты SD имеют различные физические размеры и с различными возможностями и скоростью.

Карты бывают трех размеров, известные как «SD», «miniSD» и «microSD», от самых больших до самых маленьких.

В зависимости от емкости карты делятся на три типа:

Дополнительной характеристикой SD карты является скорость. Карты делятся на классы:

Спецификация SD является большой и всеобъемлющей. Если бы мы сами попытались реализовать спецификацию SD, мы бы рассмотрели целый ряд головоломок. Как таковой, распространено использование ранее существовавших реализаций спецификации, и, к счастью, ESP-IDF предоставляет нам именно это.

Существует также отличное примерное приложение, представленное в каталоге examples / storage / sd_card ESP-IDF.

Карта SD может использоваться для хранения данных, но не может использоваться для хранения кода команды для выполнения. Таким образом, SD-карта не должна рассматриваться как альтернатива флэш-памяти, доступной через SPI для хранения кода. SD-карту следует использовать для хранения данных приложения, которые могут быть прочитаны или записаны при запуске приложений.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *