Библиотека SD

Класс SD

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

Функции класса SD:

 begin();

 exists();

 mkdir();

 open();

 remove();

 rmdir().

Функция begin()

Функция begin() инициализирует библиотеку SD, назначая вывод для сигнала SS (Slave Select).

Синтаксис

SD.begin(); SD.begin(pin)

Параметр: pin — вывод для сигнала SS.

Возвращаемые значения: true — в случае удачного соединения, false — в случае неудачи.

Функция exists()

Функция exists() проверяет, существует на карте SD файл или каталог.

Синтаксис:

SD.exists(path)

Параметр: path — имя файла или каталога.

Возвращаемые значения: true — в случае удачного соединения, false — в случае неудачи.

Функция mkdir()

Функция mkdir() cоздает папку на карте памяти SD.

Синтаксис:

SD.exists(dirpath)

Параметр: dirpath — имя создаваемого каталога (папки). Если параметр задается в виде пути с несуществующими промежуточными каталогами, то создаются и все промежуточные каталоги.

Возвращаемые значения: true — если папка создана, false — в случае неудачи.

Функция rmdir()

Функция rmdir() удаляет папку с карты памяти SD, папка должна быть пустой.

Синтаксис:

SD.exists(dirpath)

Параметр: dirpath — имя удаляемой папки.

Возвращаемые значения: true — если папка удалена, false — в случае неудачи.

Функция open()

Функция open() открывает файл на карте памяти SD. Если файл не существует и открывается для записи, то он будет создан.

Синтаксис:

SD.open(filepath) SD.open(filepath, mode)

Параметры:

 filepath — имя открываемого файла;

 mode — режим открытия файла:

— открыть файл для чтения, начиная с начала файла;

— открыть файл для чтения и записи, начиная с конца файла. Возвращаемые значения: true — в случае удачи, false — в случае неудачи.

Функция remove()

Функция remove() удаляет файл с карты памяти SD.

Синтаксис:

SD.remove(filepath)

Параметр: filepath — имя удаляемого файла.

Возвращаемые значения: true — в случае удачи, false — в случае неудачи.

Класс File

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

Функции класса File:

 available();

 close();

 flush();

 peek();

 position();

 print();

 println();

 seek();

 size();

 read();

 write();

 isDirectory();

 openNextFile();

 rewindDirectory().

Функция available()

Функция available() проверяет, есть ли доступный для чтения байт в открытом файле.

Синтаксис:

myFile.available()

Параметр: File — экземпляр файла File, возвращаемый SD.open(). Возвращаемое значение: число доступных для чтения байтов.

Пример использования функции available() представлен в примере

 

// открыть файл для чтения myFile = SD.open("test.txt",); if (myFile)

{

// чтение из файла и отправка

// в последовательный порт while (myFile.available())

{

Serial.write(myFile.read());

}

}

// закрыть файл myFile.close();

Функция close()

Функция close() закрывает файл и сохраняет записанные на него данные на карту SD.

Синтаксис:

myFile.close()

Параметр: File — экземпляр файла File, возвращаемый SD.open(). Возвращаемого значения нет.

Функция flush()

Функция flush() гарантирует, что любые байты, записанные в файл, физически сохранятся на SD-карте (при закрытии файла это делается автоматически).

Синтаксис:

myFile.flush()

Параметр: File — экземпляр файла File, возвращаемый SD.open(). Возвращаемого значения нет.

Функция peek()

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

Синтаксис:

myFile.peek()

Параметр: File — экземпляр файла File, возвращаемый SD.open(). Возвращаемые значения: байт из файла или –1, если байт не считан.

Функция position()

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

Синтаксис:

myFile.position()

Параметр: File — экземпляр файла File, возвращаемый SD.open(). Возвращаемое значение: текущая позиция в файле.

Функция print()

Функция print() записывает данные в файл, который был открыт для записи.

Синтаксис:

myFile.print(data) myFile.print(data, BASE)

Параметры:

 File — экземпляр файла File, возвращаемый SD.open();

 data — данные для записи в файл;

 BASE — вид передаваемых символов:

• BIN — двоичный;

• DEC — десятичный;

• OCT — восьмеричный;

• HEX — шестнадцатеричный. Возвращаемого значения нет.

Функция println()

Функция println() записывает данные в файл, который был открыт для записи, данные дополняются символами перевода строки.

Синтаксис:

myFile.println() myFile.println(data) myFile.println(data, BASE)

Параметры:

 File — экземпляр файла File, возвращаемый SD.open();

 data — данные для записи в файл;

 BASE — вид передаваемых символов:

• BIN — двоичный;

• DEC — десятичный;

• OCT — восьмеричный;

• HEX — шестнадцатеричный. Возвращаемого значения нет.

Функция seek()

Функция seek() устанавливает новую позицию в файле для чтения или записи байта.

Синтаксис:

myFile.seek(pos)

Параметры:

 File — экземпляр файла File, возвращаемый SD.open();

 pos — новая устанавливаемая позиция в файле для чтения или записи в файле. Возвращаемые значения: true — в случае удачи, false — в случае неудачи.

Функция size()

Функция size() возвращает размер файла в байтах.

Синтаксис:

myFile.size()

Параметр: File — экземпляр файла File, возвращаемый SD.open(). Возвращаемое значение: размер файла в байтах.

Функция read()

Функция read() возвращает байт из открытого файла. Синтаксис:

myFile.read()

Параметр: File — экземпляр файла File, возвращаемый SD.open(). Возвращаемое значение: полученный из файла байт.

Функция write()

Функция write() записывает данные в открытый для записи файл.

Синтаксис:

myFile.write(data) myFile.write(buf, len)

Параметры:

 File — экземпляр файла File, возвращаемый SD.open();

 data — передаваемые данные;

 buf — массив символов или байтов;

 len — размер символов в буфере для записи. Возвращаемое значение: количество записанных байтов.

Функция isDirectory()

Функция isDirectory() проверяет, является ли текущий файл каталогом или нет.

Синтаксис:

myFile.isDirectory()

Параметр: File — экземпляр файла File, возвращаемый SD.open(). Возвращаемое значение: true — если да, false — если нет.

Функция openNextFile()

Функция openNextFile() возвращает имя следующего по позиции файла из каталога.

Синтаксис:

myFile.openNextFile()

Параметр: File — экземпляр файла File, возвращаемый SD.open(). Возвращаемое значение: имя следующего файла из каталога.

Функция rewindDirectory()

Функция rewindDirectory() приведет вас обратно в первый файл в каталоге. Функция используется в сочетании с openNextFile().

Синтаксис:

rewindDirectory()

Параметр: File — экземпляр файла File, возвращаемый SD.open(). Возвращаемое значение: имя первого файла каталога.

 

Вверх

 

Основные версии плат Arduino

Due — плата на базе 32-битного ARM микропроцессора Cortex-M3 ARM SAM3U4E;

Leonardo — плата на микроконтроллере ATmega32U4;

Uno — самая популярная версия базовой платформы Arduino;

Duemilanove — плата на микроконтроллере ATmega168 или ATmega328;

Diecimila — версия базовой платформы Arduino USB;

Nano — компактная платформа, используемая как макет. Nano подключается к компьютеру при помощи кабеля USB Mini-B;

Mega ADK — версия платы Mega 2560 с поддержкой интерфейса USB-host для связи с телефонами на Android и другими устройствами с интерфейсом USB;

Mega2560 — плата на базе микроконтроллера ATmega2560 с использованием чипа ATMega8U2 для последовательного соединения по USB-порту;

Mega — версия серии Mega на базе микроконтроллера ATmega1280;

Arduino BT — платформа с модулем Bluetooth для беспроводной связи и программирования;

LilyPad — платформа, разработанная для переноски, может зашиваться в ткань;

Fio — платформа разработана для беспроводных применений. Fio содержит разъем для радио XBee, разъем для батареи LiPo и встроенную схему подзарядки;

Mini — самая маленькая платформа Arduino;

Pro — платформа, разработанная для опытных пользователей, может являться частью большего проекта;

Pro Mini — как и платформа Pro, разработана для опытных пользователей, которым требуется низкая цена, меньшие размеры и дополнительная функциональность.