Основы настройки и использования micro sd карт с arduino

Подключение sd карты к ардуино

SD и microSD карты могут существенно расширить возможности проектов ардуино, работающих с большими объемами данных: регистраторов данных, метеостанций, систем умного дома. Платы arduino оснащены сравнительно небольшой внутренней памятью, всего до 4 килобайт, включая и флэш-память, и EEPROM. Этой памяти не хватит для записи больших объемов данных, тем более, если плата будет постоянно выключаться или выключаться. Подключение SD карты ардуино в качестве внешнего накопителя позволяет многократно увеличить место для хранения любой информации. Съемные накопители SD стоят дешево, легко подключаются и удобны в использовании. О правильном подключении SD карты к Arduino и пойдет речь в статье.

Описание модуля для SD карты памяти

Работа с памятью SD в ардуино не представляет особых трудностей. Самым простым способом является подключение готового модуля и использование стандартной библиотеки. С этого варианта мы и начнем.

Использование готового модуля обладает различными преимуществами. Это довольно простое и удобное средство для работы с большим объемом данных. Он не требует особых навыков в подключении, все разъемы подписаны прямо на плате. За удобство приходится платить, но стоимость модуля относительно не велика, его легко можно найти по доступным ценам в российских и зарубежных интернет-магазинах.

Универсальный модуль представляет собой обыкновенную плату, на которой помещены слот для карты, резисторы и регулятор напряжений. Он обладает следующими техническими характеристиками:

  • Диапазон рабочих напряжений 4,5-5 В;
  • Поддержка SD карты до 2 Гб;
  • Ток 80 мА;
  • Файловая система FAT 16.

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

Естественно, у недорогих модулей карт памяти есть и недостатки. Например, самые дешевые и распространенные модели поддерживают только карты до 4Гб и почти все модули позволяют хранить на SD карте файлы объемом до двух гигабайт – это ограничение используемой в большинстве моделей файловой системы FAT.

Еще одним недостатком карт памяти является относительно долгое время записи, однако существуют пути работы с ней, позволяющие увеличить ее скорость работы. Для этого используется механизм кэширования, когда данные сначала копятся в оперативной памяти, а потом сбрасываются за раз на карту памяти.

Платы Arduino для работы с SD

Для работы с SD card существует несколько различных плат:

  • Arduino Ethernet – эта плата оснащена специальным модулем для вывода данных. Для выхода CS используется контакт 4. Для правильной работы нужно применять команду SD.begin(4).
  • Adafruit Micro-SD – это отладочная плата, которая используется при работе с Micro-SD картами.
  • Sparkfun SD – закрепляется сверху Ардуино, для выхода CS использует 8 контакт. В новой версии платы есть соединение с 3.3 В и встроен шестиразрядный инвертор.

Подключение SD и microSD к ардуино

Существует два вида карт – microSD и SD. Они одинаковы по подключению, структуре и программе, различаются же только размером. Перед работой советуется отформатировать карту SD. Обычно новые карты уже отформатированы и готовы к работе, но если используется старая карта, то лучше провести форматирование в файловой системе Arduino. Для проведения процедуры на компьютере должна быть установлена библиотека SD, желательно FAT16. Для форматирования на Windows нужно щелкнуть на иконке карты и нажать “Format”.

Для подключения карты используется 6 контактов, взаимодействие производится по интерфейсу SPI. Она выглядит на плате как разъем на лицевой поверхности с шестью штырями. Чтобы подключить карту, нужны сам контроллер, модуль карты и 6 проводов. Помимо SPI существует режим SDIO, но он сложен в реализации и слабо совместим с Ардуино. SPI легко налаживается для работы со всеми микроконтроллерами, поэтому советуется использовать именно его.

Подключение цифровых выводов производится так: для платы Arduino Nano или Uno контакт MOSI подключается к D11, MISO к D12,SCK к D13, CS к 4, VCC на +5 В,.GND к GND. На плате имеются разъемы для подключения к 3,3 и 5 вольтам. Питание самой карты составляет 3,3 вольт, поэтому проще применять микроконтроллер с таким же питанием, в ином случае нужен преобразователей уровней напряжения. На самых распространенных платах ардуино такой выход есть.

При подключении SD карты нужно учитывать соответствие SPI контактов для разных тип плат Arduino:

Плата Пин MOSI Пин MISO Пин SCK
Arduino Nano, Uno 11 12 13
Arduino Mega2560 51 50 52

Библиотека ардуино для работы с SD и microSD

Для удобства работы с внешними накопителями данных в среде Arduino IDE доступны уже готовые библиотеки. Ничего дополнительно скачивать или устанавливать в большинстве случаев не понадобится.

Для подключения библиотеки в скетче нужно использовать инструкцию include:

Библиотека SPI нужна для правильной работы устройств, подключаемых по SPI.

Библиотечные функции нужно для считывания и записи данных на карту. Библиотека может поддерживать SD и SDHC карты.

Имена записываются в формате 8.3, то есть 8 знаков для названия, 3 для расширения. Путь к файлу записывается с помощью слэшей «/».

Встроенные примеры библиотеки SD

В Arduino IDE встроены готовые примеры для быстрого изучение функций бибилотеки:

  • Card Info – это извлечение информации, хранящейся в SD карте. С ее помощью можно узнать, в какую файловую систему отформатирована карта, наличие свободного места, какие данные записаны.
  • Yun Datalogger – позволяет записывать лог-данные с трех сенсоров на карту.
  • Datalogger – регистрирует и созраняет данные, полученные с датчика на карту.
  • Dump File – считывание данные с карты, передает их в серийный порт.
  • Files – создает и удаляет данные. Существует функция file.write(), которая помещает записанные данные в буфер. Перемещение информации на карту происходит при вызове функций flush() или close(), поэтому важно закрывать его после каждого открытия файла, иначе данные будут потеряны.
  • Read Write – записывает и считывает файлы с карты.

Функции библиотеки SD

Ардуино-библиотека SD содержит различные функции, с помощью которыми можно управлять данными. Функции класса SD:

  • begin() – функция инициализирует библиотеку, присваивает контакт для сигнала.
  • exists() – призвана проверить, имеется ли на карте необходимая информация.
  • mkdir() – позволяет создать нужную папку на карте памяти.
  • rmdir() – с помощью этой функции можно удалить папку. Важно, чтобы удаляемая папка была пустой.
  • open() – позволяет открыть файл, который нужен для записи или чтения. Если нужный файл отсутствует на карте, то он будет создан.
  • remove() – удаляет любой файл.

В ответ на все эти функции должно прийти одно из значений – true, в случае удачного завершения операции и false при неудаче.

Создание, редактирование и удаление файлов.

Для работы с файлами в ардуино существует класс File. В него входят функции, которые предназначены для записи и чтения информации с карты:

  • available() – проверяет наличие в файле байт, которые доступны для чтения. В ответ приходит количество места, которое доступно для чтения.
  • close() – закрывает файл, перед эти проверяет, сохранены ли данные на карту.
  • flush() – функция позволяет убедиться, что данные записаны на карту.
  • name() – возвращает указатель на имя.
  • peek() – считывает байты данных, при этом не перемещает указатель на следующий символ.
  • position() – находит текущее положение указателя в файле.
  • print() – выводит данные в отдельный файл.
  • println() – печатает данные в файл до места, где появляется символ перевода каретки и пустая строка.
  • seek() – меняет положение текущей позиции в файле.
  • size() – выводит информацию о размере данных.
  • read() – считывает информацию.
  • write() – производит запись в файл.
  • isDirectory() – с помощью этого метода происходит проверка, является ли файл директорией, то есть каталогом или папкой.
  • openNextFile() – выводит имя последующего файла.
  • rewindDirectory() – возвращает к первому файлу в директории.

Для корректной работы платы нужно проследить, чтобы был сконфигурирован SS выход.

Скетч примера работы с SD библиотекой ардуино

Ниже приведен скетч, демонстрирующий пример работы с модулем карты памяти.

Создание файла и выбор названия для arduino SD card

Создание файла – одна из самых распространенных задач, возникающих при работе с SD картами в ардуино. Как мы убедились в предыдущем скетче, для создания файла достаточно просто открыт его. Если мы захотим проверить, есть ли такой файл, можно использовать функцию exists():

Функция возвращает TRUE, если файл существует.

Популярной практикой при создании проектов – регистраторов данных является разбивка больших файлов на более мелкие, которые удобнее обновлять и открывать на компьютере. Например, вместо одного очень большого файла datalog.csv на SD карте можно иметь несколько маленьких, добавляя к концу номер по порядку: datalog01.csv, datalog02.csv и т.д.
Вот пример скетча, который поможет вам выполнить эту работу:

Заключение

Как мы с вами убедились, подключить SD карту памяти к Ардуино и использовать ее в проекте не очень сложно. Для этого есть готовые библиотеки в Arduino IDE и самые разнообразные варианты модулей. Приобрести карту памяти можно в любом магазине электроники, они стоят недорого, при этом позволяют существенно расширить потенциал платы Ардуино. С использованием карт памяти можно собирать и сохранять для последующего анализа большие объемы данных. С помощью нашей статьи мы сможете наделить памятью свои исследовательские проекты, создать системы голосового оповещения для умного дома, создать простой wav-проигрыватель и многое другое.

Пример подключения модуля micro SD карт к Arduino Uno (Mega)

Мы уже коснулись темы подключения SD-карты к нашему микроконтроллеру, теперь коснемся этой темы более подробно и поговорим про модуль микро SD карт.

Модуль для micro SD карт используется для передачи данных на стандартную SD-карту и обратно. Вывод контактов напрямую совместим с Arduino, а также может использоваться с другими микроконтроллерами. Это позволяет нам добавлять в наш проект массовое хранение и регистрацию данных.

Особенности

  1. Входное напряжение: 3,3 В / 5 В
  2. Со всеми выводами SD SPI: MOSI, SCK, MISO и CS для дальнейшего подключения
  3. Через программирование вы можете читать и записывать на SD-карту, используя ваш Aрдуино
  4. Сделаете приложение SD более простым и простым
  5. Общайтесь с Arduino, используя интерфейс SPI
  6. Push-pop гнездо с картой немного над краем печатной платы, поэтому его легко вставить и удалить
  7. 4 монтажных отверстия диаметром 2,2 мм
  8. Используйте только 4 вывода ввода / вывода на Arduino
  9. Размер: 42 мм x 25 мм x 5 мм

Шаг 1: Комплектующие

Для этого урока нам необходимы следующие комплектующие:

  • Arduino Uno
  • USB-кабель типа A-B
  • Модуль Micro SD карт
  • Проводная перемычка папа-мама
  • SD-карта

Шаг 2. Схема соединения

Модуль микро SD-карты

Этот модуль использует стандартный интерфейс SPI для связи, который включает шины SPI, MISO, MOSI, SCK и сигнальный выход CS. Через программирование данные могут быть легко прочитаны и записаны на SD-карту с помощью Arduino или других микроконтроллеров.

  • CS (выбор чипа)
  • SCK (последовательный тактовый сигнал)
  • MOSI (cлужит для передачи данных от ведущего устройства ведомому)
  • VCC (3.3 В или 5 В)
  • GND (земля)

На приведенной выше схеме показано простое соединение модуля Micro SD Card и Arduino UNO

  • Подключите VCC с 5В в Arduino
  • Затем подключите GND SD-карты к земле Arduino
  • Подключите CS к контакту 14
  • Подключите SCK к контакту 13
  • MOSI подключается к контакту 11
  • Наконец, подключите MISO (служит для передачи данных от ведомого устройства ведущему) к контакту 12

После того как вы все соедините подключите Arduino к источнику питания с помощью USB-кабеля.

Шаг 3: Вставляем код

Попробуем на примере в нашем Ардуино:

  1. Открываем программное обеспечение Arduino
  2. Нажимаем ‘file’
  3. Находим ‘example’
  4. Кликаем ‘SD’
  5. Выбираем ‘ReadWrite’

Шаг 4: Выбираем COM-порт

Просто нажмите на «Tools», затем выберите порт, доступный на вашем ПК.

Шаг 5: Загружаем исходный код

Загрузите исходный код в Arduino и откройте “последовательный монитор” (Serial Monitor), чтобы получить результат.

Шаг 6: Результат

Следующий результат будет отображаться на экране – см.выше.

Модуль Micro SD Card Reader

Товары

Обзор модулей SD и micro-SD карт к Arduino

Большинство микроконтроллеров обладает очень небольшой внутренней памятью для хранения данных. Arduino – не исключение. Например, Mega имеет всего 4 Кб памяти EEPROM, а Uno и того меньше – всего 1 Кб. А есть проекты на Arduino, которым необходимо работать с большими объемами данных, или хранить в памяти картинки или музыку. Конечно памяти Arduino для этого не хватит. Самый доступный и эффективный вариант увеличения памяти данных для проектов Arduino – использование SD-карты..

Существует множество плат для удобного подключения SD и micro-SD карт к Arduino (рис. 1).

SD-карту необходимо отформатировать в формате FAT16 или FAT32. Можно использовать средства операционной системы или программу SDCardFormatter.

Подключение к плате Arduino

SD-карта взаимодействует с платой Arduino gпо протоколу SPI. Используются 4 контакта,, для Uno это 13-SCK, 12-MISO, 11-MOSI, для пина выбора CS обычно используют 10, 4 но можно любой.

В Arduino IDE есть встроенная библиотека для работы с SD-картами, которая так и называется – SD. Загрузим на плату Arduino пример CardInfo (Файл → Примеры → SD → CardInfo). В последовательный порт выводится информация о файловой системе, емкости SD-карты и список файлов на SD-карте (рис. 4).

Arduino-библиотека SD содержит различные функции, с помощью которыми можно управлять данными.

Пример использования модуля Micro SD Card Reader

Создадим проект сохранения на SD-карте показаний, которые мы будем получать с датчика BME280. Данные должны быть привязаны к времени, для этого будем использовать RTC DS3231.

Библиотека SD для работы Arduino с SD картами

Библиотека SD для Arduino позволяет выполнять чтение и запись на SD карты, установленные, например, на плату расширения Arduino Ethernet Shield, и поддерживает файловые системы FAT16 и FAT32 на стандартных SD картах и картах SDHC.

Содержание

Введение

Библиотека SD позволяет выполнять чтение и запись на SD карты, установленные, например, на плату расширения Arduino Ethernet Shield. Она построена на базе sdfatlib от William Greiman. Библиотека поддерживает файловые системы FAT16 и FAT32 на стандартных SD картах и картах SDHC. Она использует короткие имена файлов 8.3. Имена файлов, переданные функциям SD библиотеки, могут включать пути, разделенные прямыми слешами, /, например, ” directory/filename.txt “. Поскольку рабочий каталог – это всегда корневой каталог SD карты, имя ссылается на один и тот же файл, независимо от того, включает ли оно прямой слеш (например, ” /file.txt ‘ эквивалентно ” file.txt “). С версии 1.0 библиотека поддерживает открытие нескольких файлов.

Связь между микроконтроллером и SD картой использует интерфейс SPI, который использует цифровые выводы 11, 12 и 13 (на большинстве плат Arduino) или 50, 51 и 52 (на платах Arduino Mega). Кроме того, для выбора SD карты должен использоваться еще один вывод. Это может быть аппаратный вывод SS – вывод 10 (на большинстве плат Arduino) или вывод 53 (на платах Arduino Mega) – или какой-либо другой вывод, заданный с помощью вызова SD.begin() . Обратите внимание, что даже если вы не используете аппаратный вывод SS, он должен быть оставлен настроенным для работы на выход, иначе библиотека SD работать не будет.

Описание методов и классов

Класс SD

Класс SD предоставляет функции для доступа к SD карте и манипуляций с файлами и каталогами.

Инициализирует библиотеку SD и карту. Это запускает использование шины SPI (цифровые выводы 11, 12 и 13 на большинстве плат Arduino; 50, 51 и 52 на Arduino Mega) и вывод выбора чипа, который по умолчанию является аппаратным выводом SS (вывод 10 на большинстве плат Arduino, 53 на Arduino Mega). Обратите внимание, что даже если вы используете какой-либо другой вывод выбора чипа, аппаратный вывод SS должен быть оставлен настроенным для работы на выход, иначе библиотека SD работать не будет.

Синтаксис

Параметры

cspin (необязательный): вывод, подключенный к линии выбора чипа на SD карте; по умолчанию устанавливается аппаратный вывод SS шины SPI.

Возвращаемое значение

true в случае успеха; false в случае неудачи.

Проверяет, существует ли на SD карте файл или каталог.

Синтаксис

Параметры

filename : имя файла, проверяемого на существование, может включать каталоги (отделенные прямыми слешами, /).

Возвращаемое значение

true , если файл или каталог существует; false , если нет.

Создает каталог на SD карте. Он также создает промежуточные каталоги, которые еще не существуют; например SD.mkdir(“a/b/c”) создаст a , b и c .

Синтаксис

Параметры

filename : имя каталога, который необходимо создать, может включать подкаталоги (отделенные прямыми слешами, /).

Возвращаемое значение

true , если каталог создан успешно; false , если нет.

Открывает файл на SD карте. Если файл открывается для записи, и если он еще не существует, то он будет создан (но содержащий его каталог уже должен существовать).

Синтаксис

Параметры

filename : имя файла, который необходимо открыть, может включать каталоги (отделенные прямыми слешами, /), переменная типа char* .

mode (необязательный): режим, в котором открыть файл (по умолчанию FILE_READ ), переменная типа byte . Допустимые значения:

  • FILE_READ : открыть файл для чтения, начиная с начала файла;
  • FILE_WRITE : открыть файл для чтения и записи, начиная с конца файла.

Возвращаемое значение

Объект File , ссылающийся на открытый файл; если файл не может быть открыт, этот объект объект в булевом контексте будет оцениваться как false , то есть вы можете проверить возвращенное значение с помощью ” if(f) “.

Удаляет файл с SD карты.

Синтаксис

Параметры

filename : имя файла, который необходимо удалить, может включать каталоги (отделенные прямыми слешами, /).

Возвращаемое значение

true , если файл удален успешно; false , если нет. Если файл не существует, возвращаемый результат не определен.

Удаляет каталог с SD карты. Каталог должен быть пустым.

Синтаксис

Параметры

filename : имя каталога, который необходимо удалить, может включать подкаталоги (отделенные прямыми слешами, /).

Возвращаемое значение

true , если каталог удален успешно; false , если нет. Если каталог не существует, возвращаемый результат не определен.

Класс File

Класс File служит для чтения и записи отдельных файлов на SD карте.

Возвращает имя файла.

Синтаксис

Возвращаемое значение

Проверяет, доступно ли какое-либо количество байтов для чтения из файла.

available() наследуется из вспомогательного класса Stream .

Синтаксис

Параметры

file : объект класса File (возвращается методом SD.open() ).

Возвращаемое значение

Количество доступных байтов ( int ).

Закрывает файл и гарантирует, что любые данные, записанные в него, физически сохранены на SD карту.

Синтаксис

Параметры

file : объект класса File (возвращается методом SD.open() ).

Возвращаемое значение

Гарантирует, что любые байты, записанные в файл, физически сохраняются на SD карту. Этот метод выполняется автоматически при закрытии файла.

flush() наследуется из вспомогательного класса Stream .

Синтаксис

Параметры

file : объект класса File (возвращается методом SD.open() ).

Возвращаемое значение

Читает байт из файла без продвижения к следующему. То есть, успешный вызов peek() возвратит то же значение, что и следующий вызов read() .

peek() наследуется из вспомогательного класса Stream .

Синтаксис

Параметры

file : объект класса File (возвращается методом SD.open() ).

Возвращаемое значение

Следующий байт (или символ) или -1, если ничего недоступно.

Выдает текущую позицию внутри файла (то есть, положение, с которого будет прочитан или записан следующий файл).

Синтаксис

Параметры

file : объект класса File (возвращается методом SD.open() ).

Возвращаемое значение

Позиция внутри файла ( unsigned long ).

Печатает данные в файл, который должен быть открыт для записи. Числа печатаются как последовательность цифр, каждая ASCII символ (то есть число 123 посылается как три символа ‘ 1 ‘, ‘ 2 ‘, ‘ 3 ‘).

Синтаксис

Параметры

file : объект класса File (возвращается методом SD.open() ).

data : данные для печати ( char , byte , int , long или string ).

BASE (необязательно): основание для печати чисел: BIN для двоичных (основание 2), DEC для десятичных (основание 10), OCT для восьмеричных (основание 8), HEX для шестнадцатеричных (основание 16).

Возвращаемое значение

print() возвратит количество записанных байтов, чтение этого значения необязательно.

Печатает данные, а затем символ возврата каретки или новой строки в файл, который должен быть открыт для записи. Числа печатаются как последовательность цифр, каждая ASCII символ (то есть число 123 посылается как три символа ‘ 1 ‘, ‘ 2 ‘, ‘ 3 ‘).

Синтаксис

Параметры

file : объект класса File (возвращается методом SD.open() ).

data : данные для печати ( char , byte , int , long или string ).

BASE (необязательно): основание для печати чисел: BIN для двоичных (основание 2), DEC для десятичных (основание 10), OCT для восьмеричных (основание 8), HEX для шестнадцатеричных (основание 16).

Возвращаемое значение

print() возвратит количество записанных байтов, чтение этого значения необязательно.

Ищет новую позицию в файле, которая должна быть между 0 и размером файла (включительно).

Синтаксис

Параметры

file : объект класса File (возвращается методом SD.open() ).

pos : позиция для поиска ( unsigned long ).

Возвращаемое значение

true , если успешно; false , если нет ( boolean ).

Получить размер файла.

Синтаксис

Параметры

file : объект класса File (возвращается методом SD.open() ).

Возвращаемое значение

Размер файла в байтах ( unsigned long ).

Прочитать из файла.

read() наследуется из вспомогательного класса Stream .

Синтаксис

Параметры

file : объект класса File (возвращается методом SD.open() ).

buf : массив символов или байтов.

len : количество элементов в buf .

Возвращаемое значение

Следующий байт (или символ), или -1, если нет доступных.

Записать данные в файл.

Синтаксис

Параметры

file : объект класса File (возвращается методом SD.open() ).

data : byte , char или строка ( char * ) для записи.

buf : массив символов или байтов.

len : количество элементов в buf .

Возвращаемое значение

write() возвратит количество записанных байтов, чтение этого значения необязательно.

Каталоги (или папки) – это специальные типы файлов, данная функция сообщает, является ли текущий файл каталогом или нет.

Синтаксис

Параметры

file : объект класса File (возвращается методом SD.open() ).

Возвращаемое значение

Пример

Возвращает следующий файл или каталог в каталоге.

Синтаксис

Параметры

file : объект класса File , который является каталогом.

Возвращаемое значение

char : следующий файл или каталог.

Пример

rewindDirectory() вернет вас назад к первому файлу в каталоге, используется совместно с openNextFile() .

Синтаксис

Параметры

file : объект класса File .

Возвращаемое значение

Пример

Примеры

Некоторые вещи, которые необходимо учитывать при использовании библиотеки SD

Обзор

Связь между микроконтроллером и SD картой использует интерфейс SPI, который занимает цифровые выводы 11, 12 и 13 (на большинстве плат Arduino) или 50, 51 и 52 (Arduino Mega). Кроме того, для выбора SD карты должен использоваться еще один дополнительный вывод. Это может быть аппаратный вывод SS – вывод 10 (на большинстве плат Arduino) или вывод 53 (на платах Arduino Mega) – или какой-либо другой вывод, заданный с помощью вызова SD.begin() . Обратите внимание, что даже если вы не используете аппаратный вывод SS, он должен быть оставлен настроенным для работы на выход, иначе библиотека SD работать не будет. Разные платы расширения для этого используют разные выводы, поэтому убедитесь в правильности выбора вывода в SD.begin() .

Форматирование/подготовка карты

Примечание: всякий раз, когда в данной статье упоминается SD карта, это означает и SD, и microSD размеры, а также SD и SDHD форматы.

Большинство SD карт работает правильно сразу из коробки, но, возможно, ваша карта использовалась в компьютере или камере и не может быть прочитана с помощью библиотеки SD. Форматирование такой карты создаст файловую систему, в которой Arduino сможет читать и писать.

Часто форматировать SD карты нежелательно, так как это уменьшает их срок службы.

Для форматирования карты вам понадобятся SD ридер и компьютер. Библиотека поддерживает файловые системы FAT16 и FAT32, но по возможности лучше используйте FAT16.

Именование файлов

Файловые системы FAT имеют ограничения, когда в них используются соглашения по именованию файлов. Вы должны использовать формат 8.3, в котором имена файлов выглядят так ” NAME001.EXT “, где ” NAME001 ” – строка из 8 или менее символов, а ” EXT ” – расширение из 3 символов. Люди часто используют расширения .TXT и .LOG . Возможно использовать и более короткие имена (например, mydata.txt или time.log ), но более длинные имена файлов использовать запрещается.

Открытие/закрытие файлов

Когда вы используете file.write() , то на карту ничего не будет записано, пока вы не вызовете flush() или close() . Всякий раз, когда вы открываете файл, убедитесь, что закрыли его, чтобы сохранить свои данные.

Начиная с версии 1.0, стало возможно иметь открытыми сразу несколько файлов.

Различные платы расширения

Ниже приведено несколько различных плат расширения, поддерживающих SD карты. Этот список неполный, но в нем приведены наиболее часто используемые платы.

Источники:

http://arduinoplus.ru/micro-sd-karti-arduino/

http://3d-diy.ru/wiki/arduino-moduli/module-micro-sd-card-reader/

http://radioprog.ru/post/334

http://www.3ona51.com/ru/reviews/2012/06/obzor-kvadrokoptera-parrot-ar-drone/

Ссылка на основную публикацию