SDカードライブラリはSPI接続のSDカードを使用するための関数群です。
SPI接続のSDカードへのアクセスやファイル/フォルダ操作のためのSD関数群と、ファイルを読み書きするためのFile関数群で構成されます。使用できるSDカードは、SDHCまでのFAT16/FAT32フォーマット、最大サイズは32GBです。SDXCカードは非サポートです。
本ライブラリを使用するためには、LazuriteIDE上の左ペイン(ライブラリ)から、"SD"と"RTC"、"SPI"のチェックボックスを有効にしてください。
※SDカードライブラリはファイル/フォルダの操作でタイムスタンプが必要で、RTCライブラリを使用しています。
SDカードをSPIで接続するため、MOSI/MISO/SCLK以外にスレーブデバイス識別用のSSピンを使用します。詳しくはSPIを参照してください。
SD.begin(csPin); |
SDカードの使用を開始するための関数です。SSピン番号csPinを指定します。 |
|
boolean SD.exists(filepath); |
filepath(フルパス)で指定したファイルまたはフォルダの存在を確認する関数です。 |
|
SD.mkdir(filepath); |
指定したフォルダを作成する関数です。 |
|
* |
SD.open(filepath, mode, fileptr); |
指定したモードmodeでファイルを開く関数です。 |
SD.remove(filepath); |
指定したファイルを削除する関数です。 |
|
SD.rmdir(filepath); |
指定したフォルダを削除する関数です。 |
|
+ |
File.init(fileptr); |
fileptrの内容を初期化します。 |
* |
int File.available(fileptr); |
ファイルから読み込む残りのバイト数を返す関数です。 |
* |
File.close(fileptr); |
ファイルを閉じる関数です。 |
* |
File.flush(fileptr); |
キャッシュされた内容をSDカードに書き出す関数です。 |
* |
int File.peek(fileptr); |
read()と異なり、読み込み位置を移動せずに1文字読み込む関数です。繰り返すと同じ文字を読み込みます。 |
* |
unsigned long File.position(fileptr); |
次に読み込む、または、書き出す位置を返す関数です。 |
* |
File.print(fileptr, buf); |
指定した文字列をファイルに書き出す関数です。 |
* |
File.println(fileptr, buf); |
指定した文字列に改行コードを付加して、ファイルに書き出す関数です。 |
* |
File.seek(fileptr, pos); |
次に読み込む、または、書き出す位置を指定した位置に移動する関数です。 |
* |
unsigned long File.size(fileptr); |
ファイルサイズを返す関数です。 |
* |
File.read(fileptr, buf, nbyte); |
ファイルからnbyte分読み込み、bufに格納する関数です。 |
* |
File.write(fileptr, buf, nbyte); |
bufをnbyte分、ファイルに書き出す関数です。 |
* |
boolean File.isDirectory(fileptr); |
フォルダかどうかを返す関数です。 |
* |
File.openNextFile(fileptr, ret, mode); |
指定したモードmodeで次のファイル、またはフォルダを開く関数です。 |
* |
File.rewindDirectory(fileptr); |
最初のファイルに戻す関数です。openNextFile()と併せて使用します。 |
* Arduinoと差異がある関数です。
+ Arduinoになく、Lazuriteにある関数です。
SDカードライブラリサンプルの共通設定は以下のとおりです。
Benchmark
本サンプルは、1MBのデータをファイルに書き出す時間と読み込む時間をms単位で計測し、シリアルモニタに表示します。
※本サンプルはルートフォルダにtest.datというファイルを作成します。実行前にtest.datというファイルがないことを確認してください。
CardInfo
本サンプルは、カードタイプとFATの種類(FAT16/32)、SDカードサイズをシリアルモニタに表示します。これらの情報はAPIでは取得できず、直接構造体メンバ変数を参照しています。詳しくはライブラリのソースコードを参照してください。
DumpFile
本サンプルは、4KBのテキストファイルを作成し、その内容を読み込んでシリアルモニタに表示します。
※本サンプルはルートフォルダにdatafile.txtというファイルを作成します。実行前にdatafile.txtというファイルがないことを確認してください。
Files
本サンプルは、ファイルの存在の確認と作成、および消去を実行します。
※本サンプルはルートフォルダにexample.txtというファイルを作成します。実行前にexample.txtというファイルがないことを確認してください。
ListFiles
本サンプルは、SDカード上のファイルの名前とサイズを取得し、シリアルモニタに一覧表示します。
MkRmvDir
本サンプルは、フォルダを作成し、作成したフォルダ内にファイルを作成します。また、作成したフォルダ内のファイルを消去し、作成したフォルダを消去します。
※本サンプルはルートフォルダにtestというフォルダを作成します。実行前にtestというフォルダがないことを確認してください。
ReadWrite
本サンプルは、ファイルを追記モードで開いて、16バイトのテキストデータを追加書き込みし、内容を読み込んでシリアルモニタに表示します。
※本サンプルはルートフォルダにtest.txtというファイルを作成します。実行前にtest.txtというファイルがないことを確認してください。