ファイルシステムに関するAPI.
[詳解]
ファイルシステムに関するAPI.
このページは本プラットフォーム独自のAPIしか記述しないが,fopen()等標準Cライブラリのファイル操作関数もサポートする.
◆ serial_port_t
シリアルポートを表す番号
列挙値 |
---|
EV3_SERIAL_DEFAULT | デフォルトのシリアルポート(ログタスク用ポート)
|
EV3_SERIAL_UART | UARTポート(センサポート1)
|
EV3_SERIAL_BT | Bluetooth仮想シリアルポート
|
EV3_SERIAL_SPP_MASTER | Bluetooth SPPマスタの仮想シリアルポート
|
◆ ev3_bluetooth_is_connected()
bool_t ev3_bluetooth_is_connected |
( |
| ) |
|
Bluetooth (Serial Port Profile)が接続されているかどうかをチェックする.
- 戻り値
-
true | 接続済み.Bluetooth仮想シリアルポートで通信できる. |
false | 接続切れ. |
◆ ev3_memfile_free()
メモリファイルを解放する.
メモリファイルにより確保されたリソース(メモリ領域)を解放する.正常終了の場合,p_memfile の buffer はNULLにクリアする.
- 引数
-
p_memfile | 解放するメモリファイルのポインタ |
- 戻り値
-
E_OK | 正常終了 |
E_MACV | メモリアクセス違反(p_memfile) |
E_OBJ | p_memfile で指定したメモリファイルは無効 |
◆ ev3_memfile_load()
ER ev3_memfile_load |
( |
const char * |
path, |
|
|
memfile_t * |
p_memfile |
|
) |
| |
SDカードのファイルをメモリファイルとしてロードする.
メモリファイルのオブジェクトを生成して,指定したファイルをSDカードからこのメモリファイルに読み込む.エラーが発生する場合,p_memfile の buffer はNULLにクリアする.
- 引数
-
path | ファイルのパス |
p_memfile | 生成したメモリファイルのオブジェクトを格納する場所へのポインタ |
- 戻り値
-
E_OK | 正常終了 |
E_MACV | メモリアクセス違反(pathかp_memfile) |
E_NOMEM | メモリ不足 |
E_PAR | パス名は無効 |
E_SYS | I/Oエラーが発生した(SDカード不良の可能性が高い) |
Open file
Get file size & allocate memory
Perform reading
◆ ev3_sdcard_closedir()
ER ev3_sdcard_closedir |
( |
ID |
dirid | ) |
|
ディレクトリをクローズする.
成功した場合,オープンされたディレクトリのリソースを解放して,そのIDは使えなくなる.
- 引数
-
- 戻り値
-
E_OK | 正常終了 |
E_CTX | 非タスクコンテストから呼び出す |
E_ID | 不正ID番号 |
E_SYS | I/Oエラーが発生した(SDカード不良の可能性が高い) |
◆ ev3_sdcard_opendir()
ER_ID ev3_sdcard_opendir |
( |
const char * |
path | ) |
|
ディレクトリをオープンする.
成功した場合,オープンされたディレクトリのIDを戻り値として返す.このIDはディレクトリ内のファイル情報を取得するために使える.
- 引数
-
- 戻り値
-
>0 | オープンされたディレクトリのID |
E_CTX | 非タスクコンテストから呼び出す |
E_MACV | メモリアクセス違反(path) |
E_NOID | ID番号不足 |
E_PAR | パス名は無効 |
E_SYS | I/Oエラーが発生した(SDカード不良の可能性が高い) |
dirent.h
◆ ev3_sdcard_readdir()
ER ev3_sdcard_readdir |
( |
ID |
dirid, |
|
|
fileinfo_t * |
p_fileinfo |
|
) |
| |
ディレクトリ内のファイル情報を読み込む.
オープンされたディレクトリから次のファイルの情報を返す.
- 引数
-
dirid | ディレクトリのID |
p_fileinfo | ファイル情報を格納する場所へのポインタ |
- 戻り値
-
E_OK | 正常終了 |
E_CTX | 非タスクコンテストから呼び出す |
E_ID | 不正ID番号 |
E_MACV | メモリアクセス違反(p_fileinfo) |
E_OBJ | これ以上読み込めるファイルの情報がない |
E_SYS | I/Oエラーが発生した(SDカード不良の可能性が高い) |
◆ ev3_serial_open_file()
シリアルポートをファイルとしてオープンする.
失敗の場合,NULLを返す(エラーログが出力される).
- 引数
-
- 戻り値
- シリアルポートのファイル
◆ ev3_spp_master_connect()
ER ev3_spp_master_connect |
( |
ev3_bt_addr_t |
addr, |
|
|
const char * |
pin, |
|
|
const char * |
service |
|
) |
| |
SPPサービスへの接続を開始する。
- 引数
-
addr | 接続先のBluetoothデバイスのMACアドレス |
pin | PINコード |
service | 接続したいSPPサービスの名前のプレフィックス |
- 戻り値
-
E_OK | 正常に開始した。 |
E_CTX | SPPマスタ機能はアイドル状態でないため、開始できなかった。 |
◆ ev3_spp_master_is_connected()
bool_t ev3_spp_master_is_connected |
( |
| ) |
|
SPPマスタ機能とリモートサービスの接続状態をチェックする
- 戻り値
-
true | 接続済み.Bluetooth仮想シリアルポートで通信できる. |
false | 接続切れ. |
◆ ev3_spp_master_reset()
ER ev3_spp_master_reset |
( |
| ) |
|
既存の通信チャンネルをクローズして、SPPマスタ機能をリセットする。
- 戻り値
-